gpt4 book ai didi

java - 使用 JCodeModel 生成 java 字节码

转载 作者:行者123 更新时间:2023-12-02 08:28:06 26 4
gpt4 key购买 nike

我已经创建了 JCodeModel,其中包含我想要生成的所有类。问题是我想生成字节码(.class 文件)和 jar,但不是源代码。有没有一种优雅的方法可以做到这一点,而无需生成 .java 文件,然后将其编译成 .class 文件和 jar?

最佳答案

您可以考虑几个 Java 字节代码生成器之一:Any Java Bytecode Generation Guide?

但是,如果您更喜欢处理 JCodeModel lib,您可以选择将中间 Java 代码保留在内存中作为临时阶段。以下是提示序列:

(1) 下面是如何获取内存中的 java 源文本的示例: Compile dynamically generated class at runtime w/o writing to File

(2) 然后你可以使用类似的方法将编译后的字节代码再次保留在内存中:https://github.com/trung/InMemoryJavaCompiler/blob/master/src/main/java/org/mdkt/compiler/InMemoryJavaCompiler.java

(3) 最后,要从内存中存储的字节代码创建 jar 文件,只需执行类似以下操作: How to use JarOutputStream to create a JAR file?

PS:最后阶段可以作为直接写入数据库(BLOB 字段等)的流来完成。

关于java - 使用 JCodeModel 生成 java 字节码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30867788/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com