需求
項目老大讓外包做了官網,不甚滿意,想自己搞搞,遂叫我反編譯他們發過來的 war 包。
方法
第一步:解壓
war 包其實就是 zip 壓縮包,用 zip 解壓。
第二步:反編譯
查看 war 包下面的 WEB-INF/classes,用 http://java-decompiler.github.io/ jd-gui 直接打開一個 class 文件,自動反編譯文件下所有文件。然后在菜單中導出代碼。
第三步:建立 maven 項目
在 IDEA 中建立 maven 項目,導入依賴,根據 WEB-INF/lib 下的依賴導入,也可以直接把類庫放入 classpath 下。
第四步:修改項目配置
有一些其他的資源,例如 spring.xml 等,放入 resources 目錄下。
還有一些靜態資源,可以進行如下配置,這些文件會直接放到 war 根目錄下。
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<webResources>
<resource>
<!-- this is relative to the pom.xml directory -->
<directory>resource2</directory>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>
...
</project>
還有一些資源原來在 WEB-INF 下的,直接放入在 java 同級建立 web-inf 目錄,再創建 WEB-INF 目錄,放入。
第五步:打包
mvn package
第六步:下載 tomcat,放入 war,啟動
http://tomcat.apache.org/,war 放入 tomcat 目錄下 webapp 中,bin 中 startup.bat 啟動
后記
老大說我干的不錯,哈哈