如何动态生成面向对象工具的代码?

时间:2012-05-14 21:19:56

标签: java oop generics

我陷入了两难境地。我想创建一个工具,通过从用户那里获取各种参数来动态生成代码。代码具有一些类似的功能,很少有东西需要从一个代码改为另一个代码。根据参数,我可以有15个不同的代码。到目前为止,我一直在使用Java中的文件处理来实现这一点,因为我在不同的文件中创建了代码,但这似乎不是一个好方法。你能建议一些比这更好的东西吗?

1 个答案:

答案 0 :(得分:1)

从Java 1.6开始,您可以在内存中编译任何您想要的内容。看看这段代码:

http://code.google.com/p/cachos/source/browse/trunk/cachos/src/com/peyrona/cachos/InMemoryCompiler.java

http://code.google.com/p/cachos/source/browse/trunk/cachos/src/com/peyrona/cachos/InMemoryExecutor.java

在这个例子中,您可以看到如何在不使用磁盘的情况下编译存储在内存中的String中的源代码。

来源(西班牙语):http://www.javahispano.org/portada/2011/12/12/compilar-y-ejecutar-codigo-java-en-memoria.html

我认为这就是你要找的东西。