나는 해결책을 찾고있다. 쉘 스크립트 명령을 사용하여 JAVA 프로그램으로 작성된 메소드를 호출해야합니다. 비 main
방법으로 전화 할 수있는 방법이 있습니까?쉘 스크립트를 사용하여 JAVA 클래스 메서드를 호출하는 방법은 무엇입니까?
.sh 파일을 사용하여 프로그램을 시작합니다 (& 중지). 어떤 식 으로든 내가 아닌 "기본"메서드를 호출하는 스크립트를 작성할 수 있습니다.
나는 해결책을 찾고있다. 쉘 스크립트 명령을 사용하여 JAVA 프로그램으로 작성된 메소드를 호출해야합니다. 비 main
방법으로 전화 할 수있는 방법이 있습니까?쉘 스크립트를 사용하여 JAVA 클래스 메서드를 호출하는 방법은 무엇입니까?
.sh 파일을 사용하여 프로그램을 시작합니다 (& 중지). 어떤 식 으로든 내가 아닌 "기본"메서드를 호출하는 스크립트를 작성할 수 있습니다.
셸 스크립트에서만 main
메서드를 호출 할 수 있습니다.
예는 다음
class Test
{
public static void main(String []arg)
{
String input = arg[0];
if ("start".equals(input))
//call start method
else if ("stop".equals(input))
//call stop method
else
//define default behaviour
}
}
셸
java -cp /path/class Test start
이 테스트 클래스 main
메소드를 호출하고 start
인수로서 전달한다.
-cp
은 java 클래스 파일의 경로를 나타냅니다. java의 경로가 이미 환경에 설정되어 있다고 가정합니다.
편집 : 당신은 대신 통화 방법은 시작하거나
을 중지 (IF-다른 사용) 당신이 원하는 경우 입력에 주요 메소드에 인수를 전달하고 기반 수 있습니다, 직접 논 메인 메소드를 호출 할 수 없습니다 쉘에서 메소드를 호출하면 애플리케이션의 진입 점이 될 것입니다. 원하는 메소드를 호출하는 main 메소드로 클래스를 작성하고 jar을 빌드 한 다음이를 일반 Java 어플리케이션으로 실행하십시오.
다음 MyFirstJavaProgram.java
public class MyFirstJavaProgram {
/* This is my first java program.
* This will print 'Hello World' as the output
*/
public static void main(String []args) {
System.out.println("Hello World"); // prints Hello World
}
}
그리고 컴퓨터에 올바르게 설치 자바 감안할 때, 다음과 같은
C:\> javac MyFirstJavaProgram.java
C:\> java MyFirstJavaProgram
Hello World
몇 가지 옵션이 있습니다 수행 할 수 있습니다
main()
메서드를 구현할 수 있습니다 (명령 줄에서 둘러싸는 클래스)의 이름조차, 다음 (의 "다른 방법은"당신이 호출 할main()
방법 이 "별"을 실행합니다 물론, 당신은 많은 클래스들로 끝남을 의미합니다 - 각각 하나는 main()
안에 있습니다.자이 썬 솔루션이 더 효과적 일 수 있습니다. 그러나 "실제"문제를 해결하려는 경우이 방법이 가장 먼저 선택되어야합니다.
질문에 의해 입증 된 프로그래밍 기술 수준을 감안할 때 이러한 제안은 비현실적입니다. –
그 편집은 균형이 잡혀 있으므로 투표를 삭제했습니다. –
빠른 컴백에 감사드립니다. 당신의 결정을 완전히 뒤집어서 업보트의 방향으로 인도하기 위해 누락 된 것이 무엇인지를 암시 해주십시오. ;-) – GhostCat
main 메소드가 아닌 메소드를 직접 호출 할 수는 없으며 main 메소드에 인수를 전달하고 입력 (if-else 사용) 메소드를 호출하여 시작 또는 중지 할 수 있습니다. – Batty
이것이 XY 문제라고 생각합니다 - https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem - 실제로 달성하기를 원하십니까? – slim
전화를 걸 방법에 대한 예를 제공해 주시겠습니까? – SubOptimal