Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring引导-如何在Process Builder中指定Java路径_Java_Spring Boot_Grails_Java 8_Spring Boot Maven Plugin - Fatal编程技术网

Spring引导-如何在Process Builder中指定Java路径

Spring引导-如何在Process Builder中指定Java路径,java,spring-boot,grails,java-8,spring-boot-maven-plugin,Java,Spring Boot,Grails,Java 8,Spring Boot Maven Plugin,我的系统中有Java7作为默认配置。但是我只能在spring引导中使用Java8 下面的命令在我的终端中运行良好 ubuntu@karthick:~$ JAVA_HOME=/opt/jdk1.8.0_181 mvn spring-boot:run 但当我试图从Process Builder执行它时,它显示出错误 代码: 我得到下面的错误 error=2, No such file or directory. Stacktrace follows: java.io.IOException: er

我的系统中有Java7作为默认配置。但是我只能在spring引导中使用Java8

下面的命令在我的终端中运行良好

ubuntu@karthick:~$ JAVA_HOME=/opt/jdk1.8.0_181 mvn spring-boot:run
但当我试图从Process Builder执行它时,它显示出错误

代码:

我得到下面的错误

error=2, No such file or directory. Stacktrace follows:
java.io.IOException: error=2, No such file or directory
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:135)
    at java.lang.ProcessImpl.start(ProcessImpl.java:130)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1022)
    ...
    at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:198)
    at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
    at net.bull.javamelody.JspWrapper.invoke(JspWrapper.java:150)
    at net.bull.javamelody.JdbcWrapper$DelegatingInvocationHandler.invoke(JdbcWrapper.java:281)
    at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:202)
    at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:180)
    at com.brandseye.cors.CorsFilter.doFilter(CorsFilter.java:82)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)

如何解决这个问题?

我建议在下面创建一个脚本filetest.sh,您可以在其中设置java home并添加其他命令来运行spring boot,只需使用以下代码从java调用该脚本:

  String[] args = { "/bin/bash", "test.sh"};

        StringBuilder builder = new StringBuilder();
        Process p2 = null;
        String result = null;
        String[] cmd = { "sudo", "-s" };
        Runtime.getRuntime().exec(cmd);
        p2 = Runtime.getRuntime().exec(args);
        BufferedReader reader = new BufferedReader(new 
       InputStreamReader(p2.getInputStream()));
        String line;
        while ((line = reader.readLine()) != null) {
            builder.append(line);
        }
        result = builder.toString();
  String[] args = { "/bin/bash", "test.sh"};

        StringBuilder builder = new StringBuilder();
        Process p2 = null;
        String result = null;
        String[] cmd = { "sudo", "-s" };
        Runtime.getRuntime().exec(cmd);
        p2 = Runtime.getRuntime().exec(args);
        BufferedReader reader = new BufferedReader(new 
       InputStreamReader(p2.getInputStream()));
        String line;
        while ((line = reader.readLine()) != null) {
            builder.append(line);
        }
        result = builder.toString();