java - Arquillian 和 Wildfly:无法收集/解决依赖关系
问题描述
我正在尝试使用 Arquillian 框架编写一个简单的 Widfly 容器测试。我已按照Wildfly 容器测试指南中的指南进行操作。
生成的 pom.xml 如下所示。
pom.xml
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>bom-all</artifactId>
<version>${version.wildfly-swarm}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.hibernate.javax.persistence/hibernate-jpa-2.1-api -->
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<version>1.0.2.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.mycompany.libs</groupId>
<artifactId>3ds-commons</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>8.0</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/com.mysema.querydsl/querydsl-apt -->
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-apt</artifactId>
<version>3.7.4</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.mysema.querydsl/querydsl-jpa -->
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-jpa</artifactId>
<version>3.7.4</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>jaxrs</artifactId>
<version>${version.wildfly-swarm}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>datasources</artifactId>
<version>${version.wildfly-swarm}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>arquillian-adapter</artifactId>
<version>${version.wildfly-swarm}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<version>1.4.0.Final</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>arquillian</artifactId>
<version>${version.wildfly-swarm}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.core</groupId>
<artifactId>arquillian-core-api</artifactId>
<version>1.4.0.Final</version>
<scope>test</scope>
</dependency>
</dependencies>
我按照指南编写了 JUnit 测试,如下所示。
InContainerTest.java
@RunWith(Arquillian.class)
@DefaultDeployment(type = DefaultDeployment.Type.JAR)
public class InContainerTest {
@ArquillianResource
InitialContext context;
@Test
public void testDataSourceIsBound() throws Exception {
DataSource ds = (DataSource) context.lookup("java:jboss/datasources/MyDS");
assertNotNull(ds);
}
}
每当我尝试mvn clean install
在此代码上运行时,都会收到以下错误:
org.jboss.arquillian.container.spi.client.container.DeploymentException: Unable to collect/resolve dependency tree for a resolution 由于:无法在 my.company.libs:my-commons:jar:0.0.1- 收集依赖项SNAPSHOT,由以下原因引起:服务器返回 HTTP 响应代码:409 用于 URL:http ://repo.gradle.org/gradle/libs-releases-local/com/mycompany/libs/my-commons/0.0.1-SNAPSHOT/my -commons-0.0.1-SNAPSHOT.pom
包my-commons
来自我公司的内部存储库,但我们settings.xml
为它配置了 Maven,它通常适用于所有其他情况。
对此的任何帮助将不胜感激。
解决方案
请检查“my-commons”是否实际包含快照或仅发布工件。检查是否还有其他一些快照存储库并相应地调整您的 Maven 配置。请参阅此处以获取如何执行此操作的参考:https ://maven.apache.org/settings.html#Repositories
推荐阅读
- spring - OneToMany Jpa 在更新父表时不断在子表中插入重复项
- r - 在 R Shiny 中,可以在条件面板中使用多个条件吗?
- python - 如何使用 pandas 将列中的匹配值转换为字典
- vertex-shader - OpenGL es:在顶点着色器中“剔除”的最佳方式
- python - 网格中的图形深度优先搜索 (DFS)
- python - 使用skimage时如何选择正确的椭圆
- javascript - 服务器发送数据不正确
- python - 迭代lxml web元素
- python-3.x - 使用 super 与内置类型的继承 - 与列表不同的结果
- reactjs - Antd Select 搜索后显示“无数据”,即使您填充了选项