我制作了一个EJB 3.0和一个客户端。 这是我的EJB的pom:
<repositories>
<repository>
<id>Jboss</id>
<url>https://repository.jboss.org/nexus/content/repositories/releases/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-ext-api</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-ext-api-impl</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
但jboss-ejb3-ext-api无法检索到它的实现:/ 日食告诉我:
容器'Maven Dependencies'引用不存在的库 'C:\ usr \ local \ m2-repository \ org \ jboss \ ejb3 \ jboss-ejb3-ext-api \ 1.0.0 \ jboss-ejb3-ext-api-1.0.0.jar'MyFirstMavenEjb
在我的客户端,我刚刚添加了“jnp-client”,检索这个没有问题 知道为什么我不能找回那两个罐子吗? 感谢。
EDIT
我需要这个类:“org.jboss.ejb3.annotation.RemoteBinding”使用@RemoteBinding。
编辑2:解决方案 在cmd中做了一些“mvn clean install”后,我看到maven试图下载一些过渡依赖..... 来自旧JBOSS REPO。因为它被拒绝访问它只是在下载最终的.jar
之前停止了
添加以下exlusions解决了问题(拒绝访问的jar)
<exclusions>
<exclusion>
<groupId>gnu-getopt</groupId>
<artifactId>getopt</artifactId>
</exclusion>
<exclusion>
<groupId>apache-xerces</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
<exclusion>
<groupId>apache-xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
<exclusion>
<groupId>wutka-dtdparser</groupId>
<artifactId>dtdparser121</artifactId>
</exclusion>
<exclusion>
<groupId>sun-jaxb</groupId>
<artifactId>jaxb-api</artifactId>
</exclusion>
</exclusions>
然而,有没有更好的解决方案? 我猜它正试图从旧的回购中获取东西,因为这个罐子不再使用了,新的一个必须受欢迎。
答案 0 :(得分:1)
我找到了更好的解决方案, 实际上这个存储库是折旧的,这意味着jboss管理不希望你再使用其中的内容。
但是,如果您向maven settings.xml添加配置文件,则可以授予对此repo的访问权限
添加此个人资料:
<profile>
<id>jboss-deprecated-repository</id>
<repositories>
<repository>
<id>jboss-deprecated-repository</id>
<name>JBoss Deprecated Maven Repository</name>
<url>https://repository.jboss.org/nexus/content/repositories/deprecated/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
</repositories>
</profile>
并且不要忘记通过addind激活配置文件
<pluginGroups>
<pluginGroup>org.jboss.maven.plugins</pluginGroup>
</pluginGroups>
答案 1 :(得分:0)
好的,所以你要找的罐子在$JBOSS_HOME/common/lib
,所以我想在你的Maven回购中提供以下内容:
mvn install:install-file -Dfile=$JBOSS_HOME/common/lib/jboss-ejb3-ext-api.jar -DgroupId="org.jboss.javaee" -DartifactId="jboss-javaee" -Dversion="1.0.0" -Dpackaging=jar
执行此操作后,在Eclipse中更新Maven依赖项。