我尝试逐步执行集成maven和netbeans(https://platform.netbeans.org/tutorials/nbm-maven-quickstart.html)的多模块示例。当我完成编码时,我知道在我的maven应用程序中添加库org.openide.util
和org.openide.util.lookup
是必要的。所以我找不到这样做的方法。
我找到了一些包含这个库的回购:
oss.sonatype.org/content/repositories/releases/com/googlecode/sarasvati/thirdparty/netbeans/org-openide-util/7.3/
和repo1.maven.org/maven2/com/googlecode/sarasvati/thirdparty/netbeans/
)但是当我尝试在netbeans中添加这个repo时,它拒绝为它编制索引。
然后我尝试在pom.xml中添加repo。在TextFilter模块中,我添加:
... <modelVersion>4.0.0</modelVersion>
<repositories>
<repository>
<id>org_openide_util_repo</id>
<url>https://repository.sonatype.org/service/local/repositories/atlassian/content/org/codeartisans/thirdparties/swing/org-openide-util/8.6.2/</url>
</repository>
</repositories>
...
<dependency>
<groupId>org.codeartisans.thirdparties.swing</groupId>
<artifactId>org-openide-util</artifactId>
<version>8.6.2</version>
</dependency>
<dependency>
<groupId>org.codeartisans.thirdparties.swing</groupId>
<artifactId>org-openide-util-lookup</artifactId>
<version>8.3.1</version>
</dependency> ...
但是当我尝试&#34;使用依赖关系构建时#34; MavenPlatformWordApp,我弄错了:
无法执行目标 org.codehaus.mojo:NBM-Maven的插件:3.13:集群应用 项目MavenPlatformWordApp-app上的(default-cluster-app):失败 从存储库中检索nbm文件:找不到工件 org.codeartisans.thirdparties.swing:org-openide-util:nbm:8.6.2 in netbeans(bits.netbeans.org/nexus/content/groups/netbeans /)
我试图在pom.xml MavenPlatformWordApp中添加对repo的引用,它们的错误采取以下形式:
无法执行目标 org.codehaus.mojo:NBM-Maven的插件:3.13:集群应用 项目MavenPlatformWordApp-app上的(default-cluster-app):失败 从存储库中检索nbm文件:找不到工件 org.codeartisans.thirdparties.swing:org-openide-util:nbm:8.6.2 in org_openide_util_repo (repository.sonatype.org/service/local/repositories/atlassian/content/org/codeartisans/thirdparties/swing/org-openide-util/8.6.2 /)
谷歌搜索没什么可以帮助我的。我无法理解这个问题,请试试我。
还有一件事:
如果遵循示例说明,filds&#34; TextFilter filter
&#34;和&#34; Lookup.getDefault()
&#34;在MavenWordEngine模块中的TextTopComponent.java中不存在。我在TextTopComponent.java之上添加import org.openide.util.Lookup并尝试添加import com.mycompany.textfilter.TextFilter。但是TextFilter在TextTopComponent.java中是不可见的,尽管我公开了TextFilter接口。你会解释我的错误吗?
答案 0 :(得分:0)
将POM中的url
- 元素替换为:
<url>https://repository.sonatype.org/service/local/repositories/atlassian/content</url>
然后可以解析org-openide-util
和org-openide-util-lookup
的依赖关系。
您使用的URL指向单个工件而不是整个存储库。
<强>更新强>
Maven说它正在寻找org.codeartisans.thirdparties.swing:org-openide-util: nbm :8.6.2我不知道为什么。 artifcat类型的nbm属于netbeans,我不熟悉netbeans。试试这个:
<dependency>
<groupId>org.codeartisans.thirdparties.swing</groupId>
<artifactId>org-openide-util-lookup</artifactId>
<version>8.3.1</version>
<type>jar</type>
</dependency>