Java 애플리케이션을 별도로 실행
Java 애플리케이션을 위치와 상관없이 이름을 사용하여 실행하고 싶을 수도 있습니다. 운영 체제에 따라 다릅니다.
구현
Java 시스템 속성은 Java 명령에 대한 경로와 클래스 경로를 플랫폼 독립적으로 개발할 수 있는 데이터를 제공합니다.
다음 코드는 이 구현을 보여줍니다.
<code class="java">public final class JavaProcess { public static int exec(Class klass, List<String> args) throws IOException, InterruptedException { String javaHome = System.getProperty("java.home"); String javaBin = javaHome + File.separator + "bin" + File.separator + "java"; String classpath = System.getProperty("java.class.path"); String className = klass.getName(); List<String> command = new LinkedList<>(); command.add(javaBin); command.add("-cp"); command.add(classpath); command.add(className); command.addAll(args); ProcessBuilder builder = new ProcessBuilder(command); Process process = builder.inheritIO().start(); process.waitFor(); return process.exitValue(); } }</code>
이 메서드는 다음과 같이 실행할 수 있습니다.
<code class="java">int status = JavaProcess.exec(MyClass.class, args);</code>
이 메서드는 대신 실제 클래스를 허용합니다. 클래스 경로에 포함되어야 하므로 이름을 문자열로 지정합니다.
위 내용은 위치와 독립적으로 Java 애플리케이션을 실행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!