如何使用可部署的WAR从tomcat / Jetty创建可执行JAR

时间:2015-12-23 16:49:20

标签: java maven tomcat gradle jetty

** TL; DR:**在exec-war-only中查找tomcat7-maven-plugin目标的替代方案。

我正在使用此maven项目,使用war overlay创建maven-war-plugintomcat7-maven-plugin创建可执行jar

<plugins>
    <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
        <executions>
            <execution>
                <id>tomcat-run</id>
                <goals>
                    <goal>exec-war-only</goal>
                </goals>
                <phase>package</phase>
                <configuration>
                    <path>/</path>
                    <enableNaming>false</enableNaming>
                    <finalName>cas-${project.version}.jar</finalName>
                    <charset>utf-8</charset>
                </configuration>
            </execution>
        </executions>
    </plugin>

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <configuration>
            <warName>cas</warName>
            <webResources>
                <resource>
                    <directory>src/main/webapp/WEB-INF</directory>
                    <filtering>true</filtering>
                    <targetPath>WEB-INF</targetPath>
                </resource>
            </webResources>
        </configuration>
    </plugin>

</plugins>

 <dependencies>
        <dependency>
            <groupId>org.jasig.cas</groupId>
            <artifactId>cas-server-webapp</artifactId>
            <version>${cas.version}</version>
            <type>war</type>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>org.jasig.cas</groupId>
            <artifactId>cas-server-support-jdbc</artifactId>
            <version>${cas.version}</version>
        </dependency>
 </dependencies>

现在我试图将这个项目转换为Gradle。我可以使用Gradle WAR Overlay Plugin生成战争叠加层。但我一直坚持将这个WAR与Tomcat / Jetty一起转换为可执行的JAR。简而言之,exec-war-onlytomcat7-maven-plugin目标的替代方案。似乎gradle中的插件没有提供到目前为止的功能。任何帮助,将不胜感激。

0 个答案:

没有答案