maven打包發現war包解壓后的class文件總是跟原Java不一樣
后來發現pom中這么寫到
<plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> <compilerId>eclipse</compilerId> <optimize>true</optimize> <!-- <includes> --> <!-- <include>src/**/*.xml</include> --> <!-- <include>src/**/*.java</include> --> <!-- </includes> --> <excludes> <exclude>testcase/**/*.java</exclude> </excludes> </configuration> <dependencies> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-compiler-eclipse</artifactId> <version>2.8.1</version> </dependency> </dependencies> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.3</version> <configuration> <warSourceDirectory>WebRoot</warSourceDirectory> <packagingExcludes> WEB-INF/lib/struts-*.jar, WEB-INF/lib/stax-api-*.jar, WEB-INF/lib/sslext-*.jar, WEB-INF/lib/xom-*.jar, WEB-INF/lib/xalan-*.jar, WEB-INF/lib/xml-apis-*.jar, WEB-INF/lib/xmlbeans-*.jar, WEB-INF/lib/xmlParserAPIs-*.jar, WEB-INF/lib/kxml2-min-*.jar, WEB-INF/lib/mail-*.jar, WEB-INF/lib/commons-validator-*.jar, WEB-INF/lib/commons-chain-*.jar, WEB-INF/lib/activation-*.jar, WEB-INF/lib/antlr-*.jar, WEB-INF/lib/ant-launcher-*.jar, WEB-INF/lib/icu4j-*.jar </packagingExcludes> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <!-- <plugin> <groupId>org.zeroturnaround</groupId> <artifactId>jrebel-maven-plugin</artifactId> <version>1.1.6</version> <executions> <execution> <id>generate-rebel-xml</id> <phase>process-resources</phase> <goals> <goal>generate</goal> </goals> </execution> </executions> </plugin> --> </plugins>
而我一直沒有發現,自己的WEB-INFO 目錄下同樣存在一個class文件,由於項目默認的打包路徑也是WEB-INFO 故,pom中那樣寫法 會導致原WEN-INFO 小的文件 一直會覆蓋新編譯的文件