反編譯 war 包成傳統項目的方法
阿新 • • 發佈:2019-03-25
pack rtu plugins zip 項目配置 ... start apach gin
還有一些靜態資源,可以進行如下配置,這些文件會直接放到 war 根目錄下。
需求
項目老大讓外包做了官網,不甚滿意,想自己搞搞,遂叫我反編譯他們發過來的 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 目錄下。
<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 啟動
後記
老大說我幹的不錯,哈哈
反編譯 war 包成傳統項目的方法