用于生成 Java 源文件的 Java API [英] A Java API to generate Java source files

查看:26
本文介绍了用于生成 Java 源文件的 Java API的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找一个框架来生成 Java 源文件.

I'm looking for a framework to generate Java source files.

类似于以下 API:

X clazz = Something.createClass("package name", "class name");
clazz.addSuperInterface("interface name");
clazz.addMethod("method name", returnType, argumentTypes, ...);

File targetDir = ...;
clazz.generate(targetDir);

然后,应该在目标目录的子目录中找到一个java源文件.

Then, a java source file should be found in a sub-directory of the target directory.

有人知道这样的框架吗?

Does anyone know such a framework?

编辑:

  1. 我真的需要源文件.
  2. 我还想填写方法的代码.
  3. 我正在寻找一种高级抽象,而不是直接的字节码操作/生成.
  4. 我还需要对象树中的类结构".
  5. 问题域很一般:生成大量非常不同的类,没有通用结构".

<小时>

解决方案
我根据您的回答发布了 2 个答案... 使用 CodeModel使用 Eclipse JDT.

我在我的解决方案中使用了 CodeModel,:-)

I have used CodeModel in my solution, :-)

推荐答案

Sun 提供了一个名为 CodeModel 的 API,用于使用 API 生成 Java 源文件.获取信息并不是最容易的事情,但它就在那里,而且效果非常好.

Sun provides an API called CodeModel for generating Java source files using an API. It's not the easiest thing to get information on, but it's there and it works extremely well.

获取它的最简单方法是作为 JAXB 2 RI 的一部分 - XJC 模式到 Java 生成器使用 CodeModel 生成其 Java 源代码,并且它是 XJC jar 的一部分.您可以仅将其用于 CodeModel.

The easiest way to get hold of it is as part of the JAXB 2 RI - the XJC schema-to-java generator uses CodeModel to generate its java source, and it's part of the XJC jars. You can use it just for the CodeModel.

http://codemodel.java.net/

这篇关于用于生成 Java 源文件的 Java API的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆