我试图使用maven wildfly插件将我的.war部署到我的应用服务器。
所以我在IntelliJ中配置了它,它为我部署了战争,但我想使用maven,所以我也可以使用jenkins进行部署。
当我调用mvn wildfly:deploy时,我收到以下错误:
[错误]无法执行目标org.wildfly.plugins:wildfly-maven-plugin:1.2.1.Final:deploy(default-cli)项目Kwetter:无法执行目标部署:{" WFLYCTL0062 :复合操作失败并回滚。失败的步骤:" => {"操作步骤-1" => " WFLYSRV0205:已经有一个名为Kwetter.war的部署,它具有相同的运行时名称Kwetter.war"}}
所以我去了jboss-cli.bat并尝试删除取消部署.war。 但当我去那里打电话取消部署Kwetter.war时,我得到了:
取消部署失败:{" WFLYCTL0062:复合操作失败并且是 回滚。失败的步骤:" => {"操作步骤-1" => " WFLYCTL0216:管理资源' [(\" deployment \" => \" Kwetter.war \&#34)]'找不到"}}
当我尝试取消部署* .war时,我得到了相同的错误,所以似乎没有部署?
我还尝试在我的pom.xml中添加 force = true ,因此它会覆盖已经存在的.war但这只会给我带来同样的错误。
我包含了我的pom.xml以供参考:
<repositories>
<repository>
<id>maven2-repository.java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.java.net/maven/2/</url>
<layout>default</layout>
</repository>
</repositories>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<failOnMissingWebXml>false</failOnMissingWebXml>
</properties>
<build>
<finalName>Kwetter</finalName>
<plugins>
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>1.2.1.Final</version>
<configuration>
<!--change management console port-->
<port>9990</port>
<!--redeploy if exists-->
<force>true</force>
<username>newadmin</username>
<password>newadmin</password>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<!-- The profile to execute wildfly managed integration tests.
Other profiles similar to this could be created for other container adapters-->
<id>wildfly</id>
<!-- the dependencies for Wildfly -->
<dependencies>
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
<version>8.2.1.Final</version>
</dependency>
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-embedded</artifactId>
<version>8.2.1.Final</version>
</dependency>
</dependencies>
<build>
<testResources>
<testResource>
<directory>src/test/resources</directory>
</testResource>
<testResource>
<directory>src/test/resources-jbossas-managed</directory>
</testResource>
</testResources>
</build>
</profile>
</profiles>
<!-- https://mvnrepository.com/artifact/javax.faces/jsf-api -->
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.10.19</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.wildfly/wildfly-dist -->
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-dist</artifactId>
<version>11.0.0.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.junit</groupId>
<artifactId>arquillian-junit-container</artifactId>
<version>1.3.0.Final</version>
</dependency>
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
<version>8.2.1.Final</version>
</dependency>
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-embedded</artifactId>
<version>8.2.1.Final</version>
</dependency>
<!--Junit-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-7.0</artifactId>
<version>1.0.3.Final</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/javax/javaee-api -->
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.persistence/persistence-api -->
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.ws.rs/javax.ws.rs-api -->
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.8.9</version>
</dependency>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.arquillian</groupId>
<artifactId>arquillian-bom</artifactId>
<version>1.3.0.Final</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
答案 0 :(得分:1)
我不是100%确定究竟是什么问题。但是我能够在wildfly的管理控制台中找到一个活动的部署。 (为什么它没有出现在CLI中,我不知道)。当我使用UI删除部署时,我能够运行mvn deploy命令,并部署.war。此外,当我再次运行mvn deploy命令时,它会删除旧的.war并将新构建的那个放在那里。
答案 1 :(得分:0)
我最近遇到了这个问题。我发现JBoss安装目录下的standalone.xml文件具有存档的部署标签。一旦我删除它,就解决了问题。
答案 2 :(得分:0)
我找到了问题所在。 我从 inteiij 运行应用程序,有一段时间我遇到了应用程序部署错误。
<deployments>
<deployment name="xxx.war" runtime-name="xxx.war">
<fs-archive path="...\xxx.war"/>
</deployment>
</deployments>