从 Eclipse 的 CompilationUnit 生成字节码

发布于 2024-08-16 20:20:34 字数 222 浏览 9 评论 0原文

从事 Eclipse 插件项目;但是,我使用一个外部库来生成 org.eclipse.jdt.core.dom.CompilationUnit 的实例。有没有办法从它生成Java字节码?

一些搜索显示 CompilationUnit 通常是通过为 Eclipse 项目注册自定义构建器,然后让 Eclipse 调用它来构建的......但我找不到任何方法将其用于独立应用程序。

I am not working on an Eclipse plug-in project; however, I use an external library that generates an instance of org.eclipse.jdt.core.dom.CompilationUnit. Is there a way to generate Java bytecode from it?

Some searching revealed that CompilationUnit's are typically built by registering a custom builder for the Eclipse project, then letting eclipse invoke it... but I couldn't find any way to leverage that for a stand-alone application.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

鯉魚旗 2024-08-23 20:20:34

我建议查看 Apache Commons JCI 中的代码。它实现了 用于独立应用程序的 eclipse 编译器

I suggest to have a look at the code in Apache Commons JCI. It implements an eclipse compiler for standalone applications.

傾旎 2024-08-23 20:20:34

理论上,Java 部分程序分析工具可以通过使用 来做到这一点PPAUtil 类:

PPAUtil.compileCU(myCompilationUnit, baseOutputFolder)

虽然实际上它只需要使用 PPAUtil.getCU(file, options, reqName, false) 自己创建的 CompilationUnit 实例,所以我不不知道它是否适用于不是以这种方式生成的 CompilationUnit 实例。

The Partial Program Analysis for Java tool can, theoretically, do this, by using the PPAUtil class:

PPAUtil.compileCU(myCompilationUnit, baseOutputFolder)

Though in practice it only expects CompilationUnit instances it creates by itself with PPAUtil.getCU(file, options, reqName, false), so I don't know if it will work on a CompilationUnit instance not produced this way.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文