簡體   English   中英

如何在IDE中以jar形式運行應用程序,但將maven打包為war?

[英]How to run app as jar in IDE, but package with maven as war?

我有一個具有常規main方法的應用程序,在我的IDE中作為常規jar運行。 這是一個默認情況下在嵌入式tomcat上運行的spring-boot應用程序。

使用maven將其打包為war文件很簡單:

<packaging>war</packaging>
    ...
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>

問題:我仍然想在嵌入式我的IDE中本地運行該應用程序。 因此,排除上面的依賴項,然后將包裝保留為>jar<

問題:是否可以例如在Maven中定義配置文件,以便默認情況下打包為= jar,但是在運行特定配置文件時,它將與war交換並且包括tomcat服務器依賴項?

好的,它很簡單:

<profiles>
    <profile>
        <id>development</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <packaging.type>jar</packaging.type>
        </properties>
    </profile>

    <profile>
        <id>production</id>
        <properties>
            <packaging.type>war</packaging.type>
        </properties>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
                <scope>provided</scope>
            </dependency>
        </dependencies>
    </profile>
</profiles>

+對於IntelliJ IDEA:運行適當的maven命令非常簡單:檢查所需的配置文件,然后單擊“ package”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM