想开发一个小型的在线评测系统,遇到了技术的难题。需求就是:用户在前台选题后,编写代码(C和C++),然后提交到服务器,服务器反馈给用户的就是程序的运行结果和运行时间,哪位大哥能给我提供一个思路呀,谢谢啦!!!

解决方案 »

  1.   

    传智博客 有个JNI 视频 对你一定有帮助不过我只看了一点点 。。 建议你去看传智博客 官网网站上就有那视频就一小点  !
      

  2.   

    我找到解决办法了,哈哈。不过这个办法好像效率有点低。首先用把接到前台的信息(比如C++程序)写到一个txt文档里,将txt保存后缀名为.cpp,配置环境变量,然后用JAVA的runtime类调用cmd编译C++程序,然后再将C++程序编译成动态链接库,最后用JNI调用就行了。
      

  3.   

    没必要再编译成动态链接库调用。
    直接通过Runtime用cmd执行就可以了吧。
      

  4.   

    如果用Runtime的exec方法  我知道能做到,但是方法里面的参数不会写呀,教教我怎么写那个参数呀,谢谢啦。我是这样写的,但是找不到编译后的.exe和.obj,这是怎么回事呀,是我参数写错了吗?
    try
    {  String ls_1; 
    Process process = Runtime.getRuntime().exec("cl.exe D:/testC++/a.cpp"); 
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream())); 
            while((ls_1=bufferedReader.readLine())!=null) 
    System.out.println(ls_1); 
    process.waitFor(); 
    }
    catch(Exception e) 

    System.out.println(e.getMessage());