zoukankan      html  css  js  c++  java
  • 反编译 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 目录下。
    还有一些静态资源,可以进行如下配置,这些文件会直接放到 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 启动

    后记

    老大说我干的不错,哈哈

  • 相关阅读:
    多线程之 Final变量 详解
    多线程之 Volatile 变量 详解
    并发安全问题之HashMap
    探索设计模式目录
    MYsql 锁详解 锁 与索引的关系
    JVM GC 相关
    sql 注入 及 in 注入
    00
    03
    02
  • 原文地址:https://www.cnblogs.com/Piers/p/10591439.html
Copyright © 2011-2022 走看看