我按照文档here进行了操作,但最终得到的jar
找不到要执行的war
。这是错误:
java.io.FileNotFoundException: C:\Users\ortizj\Documents\NetBeansProjects\valida
tion-manager\Validation-Manager-Web\target\.extract\webapps\ROOT.war (The system
cannot find the file specified)
由于某些原因,war
文件未添加到jar
,因此在提取时会失败。
ROOT.war
存在且存在于目标文件夹中。
以下是相关的POM内容:
<profile>
<id>installer</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<id>tomcat-run</id>
<goals>
<goal>exec-war-only</goal>
</goals>
<phase>package</phase>
<configuration>
<warRunDependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>Validation-Manager-Web</artifactId>
<version>${project.version}</version>
<type>war</type>
</dependency>
<charset>utf-8</charset>
<httpPort>9078</httpPort>
<contextPath>/</contextPath>
</warRunDependency>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
答案 0 :(得分:1)
你错过了战争的正派。因此不包括在内:
<warRunDependencies>
<warRunDependency>
<dependency>
<groupId>a groupId</groupId>
<artifactId>and artifactId</artifactId>
<version>version</version>
<type>war</type>
</dependency>
<contextPath>/</contextPath>
</warRunDependency>
</warRunDependencies>
答案 1 :(得分:1)
如何将其添加到pom.xml文件中..
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>${maven-war-plugin.version}</version>
<configuration>
<warSourceDirectory>src/main/webapp</warSourceDirectory>
<warName>your-war-name</warName>
<failOnMissingWebXml>false</failOnMissingWebXml>
<outputDirectory>${deploy-path}</outputDirectory>
</configuration>
</plugin>
答案 2 :(得分:-1)
作为tomcat的替代方案,您可以使用jetty作为服务器。 因此POM应该添加流畅的插件。
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<warSourceDirectory>src/main/webapp</warSourceDirectory>
<warName>myapp</warName>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.4.5.v20170502</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<webApp>
<contextPath>/myapp</contextPath>
</webApp>
</configuration>
</plugin>
</plugins>
</pluginManagement>
您可以按照以下方式运行它。
mvn clean install
mvn jetty:run
您的app将在给定上下文的默认端口8080上启动(在此&#34; myapp&#34;)。