【问题标题】:Which WAR is Netbeans deploying?Netbeans 部署了哪个 WAR?
【发布时间】:2013-03-06 19:29:17
【问题描述】:

说明:

我目前在 Netbeans 中有一个 Java Web 项目,并且我正在使用 Maven。最近我更改了项目中的pom,以便在构建时生成2个war文件:一个用于开发(我希望Netbeans在选择“运行项目”时部署它),另一个用于生产。

为了在以前的部署中保持一定的标准,我将生产 WAR 保留为相同的(默认)名称 ReportsPortal.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>

它会生成两个文件(ReportsPortal.warReportsPortal-dev.war)。每个都有其环境变量(并且它们之间不同)。

当右键单击 ReportsPortal 项目并选择 Run 时,Netbeans 会启动 Tomcat,并且部署的应用程序具有正确的值,所以我猜它正在使用 ReportsPortal-dev.war,但我不能确定。

我的问题:

我如何知道或更改 Netbeans 用于在 Tomcat 中部署的 war 文件?

【问题讨论】:

    标签: java maven tomcat netbeans


    【解决方案1】:

    您应该为每个 war 文件创建一个单独的 maven 构建配置文件。然后,您可以在进行开发工作时调用开发配置文件,而仅在您想要发布时才调用生产配置文件。这将允许您准确控制正在构建的内容。

    【讨论】:

    • 谢谢@gwhitake。虽然,这并不能回答我的问题。我正在关注这里的回复 (stackoverflow.com/questions/4216657/…),我认为这比拥有不同的个人资料更好。你知道如何知道 Netbeans 在 Tomcat 中自动部署哪场战争吗?
    • @Chrisitan - 这确实回答了你的问题。答案是我不知道,但如果你想确定... 制作个人资料(或分类器)。这就是 Maven 方式。
    • 是的,我有两个分类器。但无法判断 Netbeans 采用的是一种而不是另一种。
    猜你喜欢
    • 1970-01-01
    • 2016-07-07
    • 2021-08-08
    • 1970-01-01
    • 1970-01-01
    • 2015-05-08
    • 1970-01-01
    • 2016-10-24
    • 1970-01-01
    相关资源
    最近更新 更多