编译并运行 Java 应用程序的源代码

2024-04-12

我需要从我的 Java 应用程序编译并运行用 Python、Pascal 或 C 编写的源代码(单个文件)。

我需要知道:

  • 如果编译过程成功
  • 编译后的程序的返回输出

我怎样才能做到这一点?


我一直在做同样的事情..

public String compile()
       {
           String log="";
            try {
                String s= null;
              //change this string to your compilers location
            Process p = Runtime.getRuntime().exec("cmd /C  \"C:\\Program Files\\CodeBlocks\\MinGW\\bin\\mingw32-g++.exe\" temp.cpp ");

            BufferedReader stdError = new BufferedReader(new 
                 InputStreamReader(p.getErrorStream()));
            boolean error=false;

            log+="\n....\n";
            while ((s = stdError.readLine()) != null) {
                log+=s;
                error=true;
                log+="\n";
            }
            if(error==false) log+="Compilation successful !!!";

        } catch (IOException e) {
            e.printStackTrace();
        }
            return log;
       }


     public int runProgram() 
       {
           int ret = -1;
          try
            {            
                Runtime rt = Runtime.getRuntime();
                Process proc = rt.exec("cmd.exe /c start a.exe");
                proc.waitFor();
                ret = proc.exitValue();
            } catch (Throwable t)
              {
                t.printStackTrace();
                return ret;
              }
          return ret;                      
       }  

这是我的 MiDE 中使用的两个函数,第一个函数用于编译。将地址更改为您的编译器位置。并返回日志(如果编译失败)以查看错误。

第二个运行编译后的代码。返回退出代码以检查它是否正确终止。

我不是一个很好的 java 程序员。我想你可以更好地改进我的代码;)..如果你这样做,请通知我。我也在寻找答案如何与创建的进程进行通信 https://stackoverflow.com/q/5923011/720049

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

编译并运行 Java 应用程序的源代码 的相关文章

随机推荐

  • Bootstrap 3 导航丸不起作用

    我已遵循文档 但我不确定为什么我的pills不工作 HTML
  • gremlin 查询中的类型转换

    如何使用 AWS Neptune GDB 在 gremlin 控制台中将字符串值转换为整数类型 我的属性 age 带有字符串值 需要将其转换为整数类型以进行查询中的数学运算 感谢所有建议 我尝试了以下 kelvin 建议的查询 但遇到了这些
  • 如何使用 Ninject 设置可选方法拦截?

    假设我有一个类 我有时想 但现在总是 拦截一些 但不是全部 方法 据我了解 这可以通过以下方式完成 InterceptAround 在我的 Ninject 模块中 在更高级别的代码中 或者在这些方法上使用 InterceptAttribut
  • C# COM 跨线程

    我们正在开发一种软 件来控制科学测量设备 它提供了一个 COM 接口 定义了几个函数来设置测量参数并在测量数据时触发事件 为了测试我们的软件 我正在实现该设备的模拟 com 对象运行一个循环 定期触发事件 客户端应用程序中的另一个循环现在应
  • 捕获单个网络摄像头帧。在 PHP 中使用

    有没有办法从用户网络摄像头捕获单个帧并将其传递到服务器端 我尝试使用navigator getUserMedia 它允许我创建一个 LocalMediaStream 对象 我可以将其传递给视频元素 但似乎没有可以理解的方法来获取视频本身用于
  • 无效的 Web 服务调用,缺少参数值

    我已经看这个有一段时间了 看不出问题出在哪里 任何帮助是极大的赞赏 WebMethod true ScriptMethod UseHttpGet true ResponseFormat ResponseFormat Json public
  • 乘客错过了生产环境中的开发宝石

    我的生产服务器上有一个奇怪的行为 我通过 Capistrano 将 Rails 3 应用程序部署到生产服务器 Capistrano 脚本在部署结束时重新启动乘客 当我打开应用程序时 我看到一条乘客错误消息 Could not find au
  • 防止回车键触发按钮

    我有一个搜索输入框 当用户按下 Enter 时不需要执行任何操作 我正在使用 EmberJS 和 Jquery 以及以下代码 目前 它可以禁止触发弹出窗口 但由于某些原因 在 IE9 中 当按下 Enter 键时 切换按钮将成为焦点 在 C
  • 多个类的父类的部分特化

    我想对模板类使用部分专业化 以便该模板类的所有子级都将使用该专业化 让我用一个例子来解释一下 template lt typename T unsigned int rows unsigned int cols gt class BaseM
  • Heroku 应用程序上的远程 mysql 数据库

    我可以使用个人 Web 服务器上的 mysql 数据库而不是 heroku 的数据库吗 我这样配置我的生产数据库 production adapter mysql2 database somedatabase username someus
  • FastReport 5.3 Designer无法访问事件

    我在用着快速报告Delphi 10 1 Berlin 中的版本 5 3 14 我正在移植最初编写的 VCL 应用程序DelphiXE 当我打开报告时快速报表设计器单击对象检查器上的 事件 选项卡不会执行任何操作 我也无法单击报告的 代码 选
  • 解释日期:Console.Writeline 与 string.Format

    给出以下 C 代码 var dt DateTime Now Console WriteLine 0 MM dd yy 1 dt string Format 0 MM dd yy dt 当短日期 在 Windows 7 下 Control P
  • 多核::应用?

    有没有类似的东西sapply in the multicore图书馆 或者我必须unlist mclapply 为了达到这个目的 如果它不存在 原因是什么 提前致谢 如果这是一个愚蠢的问题 抱歉 在图书馆parallel 你有mcmappl
  • 来自全新 Yeoman 安装的 gruntserve 返回 - 警告:未找到任务“serve”

    运行后yo angular进而cd进入应用程序的根文件夹 与应用程序文件夹处于同一级别 gruntfile package json等 我尝试grunt serve我收到上述错误 Grunt 不会为我启动服务器 我到处寻找但找不到说要跑np
  • 如何在 Mathematica 中将包含小数点的字母数字(参考)数字转换为字符串

    我有以下类型 DAA76647 1 的参考号 我想将其原封不动地转换为 Mathematica 中的字符串 That is myfn DAA76647 1 给出作为输出 DAA76647 1 是否有捷径可寻 输入不能是字符串 除了转换为字符
  • 创建与智能感知配合使用的 JavaScript 函数

    我想利用 Visual Studio Intellisense 因此我已阅读 http msdn microsoft com en us library bb514138 aspx http msdn microsoft com en us
  • 如何在C++中重用字符串变量

    这是正确的吗 工作正常 string str in dat ifstream fin str c str ios binary ios ate Do I need to clear the string before assigning n
  • 我可以将 CSS 过渡应用于溢出属性吗?

    我正在尝试设置一个transition delay to the overflow的财产body when a div通过添加一个类来单击body如下 div click function body addClass no overflow
  • 如何在 NativeScript 中使用 swift 库?

    我正在尝试使用这个 ios 图表库 https github com danielgindi ios charts在 NativeScript 中 这个库是用 Swift 编写的 而不是用 Objective C 编写的 我可以使用它吗 我
  • 编译并运行 Java 应用程序的源代码

    我需要从我的 Java 应用程序编译并运行用 Python Pascal 或 C 编写的源代码 单个文件 我需要知道 如果编译过程成功 编译后的程序的返回输出 我怎样才能做到这一点 我一直在做同样的事情 public String comp