Java Netbeans正在部署哪场战争?
说明: 我目前在Netbeans中有一个Java Web项目,我正在使用Maven。最近我更改了项目中的Java Netbeans正在部署哪场战争?,java,maven,tomcat,netbeans,Java,Maven,Tomcat,Netbeans,说明: 我目前在Netbeans中有一个Java Web项目,我正在使用Maven。最近我更改了项目中的pom,以便在构建时生成两个war文件:一个用于开发(我希望Netbeans在选择“运行项目”时部署),另一个用于生产 为了在以前的部署中保持某种标准,我使用相同的(默认)名称ReportsPortal.WAR保留了生产WAR,并在开发版本中添加了-dev 参考资料: 这是我更改的pom文件的一部分: <plugin> <groupId>
pom
,以便在构建时生成两个war文件:一个用于开发(我希望Netbeans在选择“运行项目”时部署),另一个用于生产
为了在以前的部署中保持某种标准,我使用相同的(默认)名称ReportsPortal.WAR
保留了生产WAR,并在开发版本中添加了-dev
参考资料:
这是我更改的pom
文件的一部分:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>package-prod</id>
<phase>package</phase>
<configuration>
<webResources>
<resource>
<directory>src/main/env/prod</directory>
</resource>
</webResources>
</configuration>
<goals>
<goal>war</goal>
</goals>
</execution>
<execution>
<id>package-dev</id>
<phase>package</phase>
<configuration>
<classifier>dev</classifier>
<webResources>
<resource>
<directory>src/main/env/dev</directory>
</resource>
</webResources>
</configuration>
<goals>
<goal>war</goal>
</goals>
</execution>
</executions>
</plugin>
org.apache.maven.plugins
maven战争插件
2.1.1
包装产品
包裹
src/main/env/prod
战争
软件包开发
包裹
发展
src/main/env/dev
战争
它生成两个文件(ReportsPortal.war
和ReportsPortal-dev.war
)。每一个都有它的环境变量(它们之间是不同的)
右键单击ReportsPortal项目并选择运行时,Netbeans启动Tomcat,部署的应用程序具有正确的值,因此我猜它使用的是ReportsPortal-dev.war
,但我不能确定
我的问题:
如何知道或更改Netbeans用于在Tomcat中部署的war文件?您应该为每个war文件创建单独的maven构建概要文件。然后,您可以在执行开发工作时调用开发概要文件,并将生产概要文件保留为仅在您想要发布时调用。这将允许您准确地控制正在构建的内容。谢谢@gwhitake。尽管如此,这并不能回答我的问题。我遵循这里的反应(),我认为这是一个更好的方式比有不同的配置文件。您知道如何知道Netbeans自动在Tomcat中部署时使用的是哪种战争吗?@Chrisitan-这确实回答了您的问题。答案是我不知道,但如果你想确定。。。制作一个概要文件(或分类器)。这就是Maven的方法。是的,我有两个分类器。但无法分辨Netbeans是如何接受其中一种,而不是另一种。