从Swing GUI编译并运行Java代码
我正在用Java(Swing)构建GUI,我必须从中执行Java代码。为了测试简单的代码,比如用Java打印HelloWorld就可以了 我看过论坛上的问题,我只知道我必须调用操作系统(我正在使用Windows7)来执行编译任务 多谢各位从Swing GUI编译并运行Java代码,java,swing,user-interface,executable-jar,Java,Swing,User Interface,Executable Jar,我正在用Java(Swing)构建GUI,我必须从中执行Java代码。为了测试简单的代码,比如用Java打印HelloWorld就可以了 我看过论坛上的问题,我只知道我必须调用操作系统(我正在使用Windows7)来执行编译任务 多谢各位 注意:我已经尝试使用Runtime.getRuntime().exec()命令,但没有成功。您可能需要检查编译代码部分的, runtime.exec()应该使用正确的命令来启动应用程序。要进行编译,您需要安装一个包含Java编译器javac的JDK。您可以使用
注意:我已经尝试使用Runtime.getRuntime().exec()命令,但没有成功。您可能需要检查编译代码部分的,
runtime.exec()应该使用正确的命令来启动应用程序。要进行编译,您需要安装一个包含Java编译器
javac
的JDK。您可以使用via Runtime.getRuntime().exec()调用javac来编译Java源代码,然后加载它
或者,您可以使用Java编译器API。主编译器API可以通过
另请参阅本文:如果您使用的是IDE,则不需要调用这些命令 汇编:
- javac HelloWorldSwing.java
- java HelloWorldSwing
因此,您可以使用Runtime.getRuntime().exec()发送命令,您可以使用我在上面编写的javac或java命令。中有一个使用
JavaCompiler
API的示例。请务必阅读与在运行时类路径上获取tools.jar
相关的页面
STBC是 欢迎来到Stackoverflow!通常,最好发布一些代码来展示您的尝试,例如,您的Runtime.getRuntime().exec()调用是什么样子的?另外,您的问题不清楚您是想执行一个单独的进程,还是只想调用一个Java方法——因为您不需要exec(),我怀疑这个问题是否可以回答,请阅读我正在检查。请记住,在编译和运行java代码时,我将使用GUI应用程序,而不是eclipse(编译器)。@user1747048 eclipse与编译器不同。该链接已经包含一个代码段,显示了如何编译文件,最好的方法是什么?1.通过Runtime.getRuntime().exec()调用javac?或2。Java编译器APIJavaCompilerAPI更优越。例如,您可以直接访问编译错误,并可以决定如何处理它们(例如,将它们放入
JList
,将它们显示在JTextArea
)。请参阅我的答案,以获得演示的链接来源,非常感谢。我创建了一个进程,调用命令提示符编译java文件(javac),然后运行它。以您提到的相同方式获取输出。再次感谢你。
import java.io.*;
public class TestExec {
public static void main(String[] args) {
try {
Process p = Runtime.getRuntime().exec("cmd /C dir");
BufferedReader in = new BufferedReader(
new InputStreamReader(p.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}