将.class文件加载到jar中?

时间:2013-04-15 09:18:04

标签: java class jar zip

是否可以执行以下任何操作?:

  1. 从给定的.class文件创建新的JAR文件?
  2. 将本地.class文件插入现有JAR?
  3. 似乎我需要以某种方式将.class读入JarEntry,但对于任何现有的JarEntry构造函数来说,这似乎都不可能。是否有任何解决方法或替代方法来实现这一目标?

    提前致谢

    编辑:寻找编程解决方案

3 个答案:

答案 0 :(得分:3)

jar文件只是包含类的zip文件。如果在计算机上安装了Java,则可以使用 jar 命令创建jar文件。

如果你使用java IDE,它应该有一个从一些类创建一个jar文件的选项。

但大多数人使用构建工具来实现这一目标。众所周知且广泛使用的java构建工具是Apache AntApache Maven。如果您不熟悉Java及其工具,那么Apache Ant可能更好。

答案 1 :(得分:0)

使用.class文件,您可以使用JAD decompiler提取源代码。然后根据需要在您修改的位置创建一个新的JAR文件。

答案 2 :(得分:0)

我已经编写了一些使用NIO2 File API将文件添加到ZIP / JAR文件的实用程序方法(该库是开源的):

的Maven:

<dependency>  
    <groupId>org.softsmithy.lib</groupId>  
    <artifactId>softsmithy-lib-core</artifactId>  
    <version>0.3</version>  
</dependency>  

教程:

http://softsmithy.sourceforge.net/lib/current/docs/tutorial/nio-file/index.html

API:CopyFileVisitor.copy