java - 感知代码中所做的更改

标签 java code-generation jtextarea code-editor

我使用 netbeans 6.9 创建了一个独立的 java 应用程序。在我的应用程序中,如果用户选择一些选项(某些特定字段的值),那么我的应用程序会自动生成其相应的代码。该代码显示在我的应用程序本身的文本区域中。
例如:在我的应用程序中,我有一个用于新变量的按钮。如果用户单击它,我的应用程序会询问变量名称。输入名称后,我的应用程序会自动生成相应的代码。
但我希望用户可以选择编辑该代码。
假设用户自己在文本区域输入该变量声明代码,那么我的应用程序应该检测到该代码的存在。
我的意思是在我的应用程序中我还有一个组合框,其中显示了声明的所有变量。因此,如果用户输入该代码并保存它,那么在我的应用程序中,应该存在用户为其编写代码的新变量。
谁能帮我解决这个问题。
-提前致谢

最佳答案

虽然您可以用 Java 完成您所要求的任务,但在某种程度上,Java 可能不是最适合此任务的语言。动态语言可能会更好。 JVM 有多种动态语言。也许 Groovy 是一个不错的选择,因为它具有类似 Java 的语法。

抛开免责声明不谈,要在 Java 中执行您想要执行的操作:

  1. 生成一个包含文本区域内容的 Java 源文件。 (这实际上可以通过创建您自己的 JavaFileManager 和 friend 的实现在内存中完成。)
  2. 调用Java compiler在所述来源上。
  3. 使用 ClassLoader 加载生成的字节码.

关于java - 感知代码中所做的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4231568/

相关文章:

java - 检查用户何时未在 JTextArea 中输入任何内容

java - JTextArea 中是否可以具有非可变尺寸?

java - 数组上的if语句

Java apache commons library源码许可问题

c# - 从 C# 生成 JavaScript 的好的架构是什么?

scala - 如何从 AutoPlugin 修改 Compile 中的 sourceGenerators?

java - JPanel 中的 GridBagLayout JLabels 和 JTextAreas 组织

java - 从sqlite数据库java中检索图像

JDK 1.3 中的 Java native 访问

xcode - XCode 的 T4 工具