【问题标题】:How to include predefined set of netbeans platform modules in maven project?如何在 Maven 项目中包含一组预定义的 netbeans 平台模块?
【发布时间】:2011-04-16 09:28:46
【问题描述】:

我正在开发由几个模块组成的 maven netbeans 平台项目。我需要依赖一些模块(比如 java.source 模块),但是当我尝试运行应用程序时,它报告说没有安装所需的模块。尽管我依赖于 pom.xml 中声明的 java.source,但事件

我认为,我必须以某种方式告诉 maven,在我的模块加载之前在最终组装的应用程序中安装(并打开)这些模块。

我怎么能做这样的事情?

更新:

当我尝试从 maven 工件创建完整的 netbeans 应用程序项目并将 Java Source API 作为依赖项添加到 pom.xml 中时...当我运行应用程序时,会出现带有以下消息的窗口:

Warning - could not install some modules: Editor Library 2 - None of the modules providing the capability org.netbeans.modules.editor.actions could be installed. Editor Indentation for Projects - The module named org.netbeans.modules.editor.settings.storage/1 was needed and not found. Editor Indentation for Projects - The module named org.netbeans.modules.options.editor/1 was needed and not found. Project UI API - No module providing the capability org.netbeans.modules.project.uiapi.ActionsFactory could be found. Project UI API - No module providing the capability org.netbeans.modules.project.uiapi.OpenProjectsTrampoline could be found. Project UI API - No module providing the capability org.netbeans.modules.project.uiapi.ProjectChooserFactory could be found. Editor Error Stripe Impl - The module named org.netbeans.modules.editor.errorstripe.api/1 was needed and not found. Java Source - The module named org.netbeans.libs.javacimpl/1 was needed and not found. Java Source - The module named org.netbeans.modules.editor.indent.project/0-1 was needed and not found. Java Source - The module named org.netbeans.modules.java.preprocessorbridge was needed and not found. Java Source - The module named org.netbeans.modules.options.editor/1 was needed and not found. Java Source - The module named org.netbeans.modules.parsing.api/1 was needed and not found. Editor Settings - No module providing the capability org.netbeans.api.editor.settings.implementation could be found. Diff - The module named org.netbeans.modules.options.editor/1 was needed and not found. 11 further modules could not be installed due to the above problems.

【问题讨论】:

  • 我的意思是,如果您正在创建 netbeans 平台应用程序(没有 maven)......您可以指定 >platform

标签: netbeans maven


【解决方案1】:

错误消息“模块依赖项具有友元依赖项 [...] 但未列为友元”意味着您需要指定 org.netbeans.modules.options.editor 的实现版本。 您可以通过编辑 src/main/nbm/module.xml 以包含以下条目来实现此目的(我在这里没有使用实际需要的值。确保找出为 id 和 explicitValue 输入哪些值以满足依赖关系(您可以在下面链接的文章中找到解释/说明):

<dependencies>
   <dependency>
        <id>org.netbeans.modules:org-netbeans-modules-editor</id>
        <type>impl</type>
        <explicitValue>org.netbeans.modules.editor/1 = 201107282000</explicitValue>
    </dependency>
</dependencies>

我很确定下面的文章将解释一些问题并帮助您找出 id 和 explicitValue 所需的值(语言是英语,作者是我):

http://blog.macrominds.de/2011/08/open-favorites-per-default-in-netbeans-rich-client-platform-maven-standalone-application/

我的应用程序目前遇到了相关问题,因此我可能会在一段时间后提供更具体的解决方案。

【讨论】:

    【解决方案2】:

    最简单的方法是获取一个它抱怨的类,比如“org.netbeans.modules.editor.actions”,然后转到“添加依赖项”并将其插入“查询”字段。 从那里你应该能够知道你需要包含哪个模块

    【讨论】:

    • 感谢您的回复。这就是我想要做的。我有父 maven 项目,它有多个模块,其中一个是主应用程序,其他是模块。我也应该在哪个项目中添加这些依赖项?我尝试使用 Add Dependencies 添加这些依赖项,但是模块本身抱怨它们的依赖项不满意。我想,我必须以某种方式包含完整的模块......
    • @Martin 您应该只将依赖项添加到您正在处理的模块中。主项目/平台应用程序(带有橙色图标的应用程序)不需要了解任何有关其下任何模块的依赖关系的信息。还要记住,当您构建主项目时,文件是从本地 maven 存储库中提取的,而不是从 ANT 从中提取它们的项目/dist 文件夹中提取的 - 有时这会导致问题,因为您必须先构建模块才能运行主要项目。
    • 仍然无法正常工作...我正在为我正在处理的模块添加依赖项。我遵循了本教程:platform.netbeans.org/tutorials/60/nbm-copyfqn.html(但想用 maven 制作)...所以我尝试为 Java Source API 添加 deps。应用程序在启动时会抛出一个窗口,其中包含有关缺少模块的信息,应该安装这些模块。
    • 我试图用 maven 包打包完整的应用程序,但是当我查看生成的存档时,没有 java 源 api 的 *jar 文件或模块...我应该告诉 Maven 以某种方式打包这些文件转换成生成的 zip 文件?
    • 现在我尝试添加所有依赖项,但对于某些依赖项,它会抱怨:'模块依赖项对 org.netbeans.modules.options.editor/1 有友元依赖,但未列为友元。'跨度>
    猜你喜欢
    • 2014-11-19
    • 1970-01-01
    • 2011-02-23
    • 2014-06-09
    • 1970-01-01
    • 2018-07-11
    • 2011-02-22
    • 1970-01-01
    • 2014-07-17
    相关资源
    最近更新 更多