我有一个简单的 Java Spring MVC Web 应用程序。我使用 Maven pom.xml 文件构建 WAR 文件。
当我执行“maven install”时,它会生成一个 WAR 文件,其中包含我在/WEB-INFO/classes
文件夹中编译的 Java 类。
我的 maven pom.xml 看起来像这样(依赖项被注释掉)......
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>mycompany.com</groupId>
<artifactId>myapp</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>My Application</name>
<url>http://maven.apache.org</url>
<dependencies>
<!-- .... -->
</dependencies>
<build>
<finalName>myapp</finalName>
</build>
</project>
接下来我想混淆我的 Java 类(我将使用 Allatori 混淆器),所以我想最简单的方法是,如果我的 Java 类都被放入它们自己的 JAR 文件中,并/WEB-INF/lib
与其余部分一起存储在文件夹中罐子。
有没有办法修改我的 Maven pom.xml 文件,以便它将我的类打包在一个 JAR 中并将 JAR 放在/WEB-INF/lib
文件夹中?
更新:
将此添加到“构建”部分(如“JF Meier”所建议的那样)......
<build>
<finalName>myapp</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<archiveClasses>true</archiveClasses>
</configuration>
</plugin>
</plugins>
</build>