Java 응용 프로그램의 명령 줄 인터페이스가있는 외부 도구와 통신하는 방법이 필요합니다. 덜 고통스럽게 만들 수있는 편리한 도구/lib가 있습니까? 날 믿어, 나는 충분히 봤어. 고맙습니다!외부 CLI와 통신 할 Java 도구가 있습니까?
답변
는 어디서 각 명령 한 과학적 방법에 대한 내 자신의 작은 명령 기반의 프레임 워크를 작성하게 IntelliJ IDEA 플랫폼 API +에서 프로세스 핸들러 (보다 구체적으로 com.intellij.execution.process.OSProcessHandler)를 사용하여 종료했습니다 자신을 실행 (쓰기)하고 프로세스의 응답을 구문 분석 (읽기)합니다.
Runtime.exec()
을 운영 체제의 외부 명령을 실행할 때 사용할 수 있습니다. 하지만, 그것을 사용하는 데있어 어려움을 겪고 있음을 알고 있어야합니다. 먼저 article을 먼저 읽으십시오.
귀하의 요구에 너무 단순하다면 ProcessBuilder을 살펴보십시오. 그것은 release notes에서, 자바 1.5부터 사용할 수있다 :
새로운 ProcessBuilder 클래스에서는, Runtime.exec보다 서브 프로세스를 호출 할 수있는 편리한 방법을 제공합니다. 특히 ProcessBuilder를 사용하면 수정 된 프로세스 환경 (즉, 상위 프로세스 환경을 기반으로하지만 약간의 변경 사항이 있음)을 사용하여 하위 프로세스를 쉽게 시작할 수 있습니다.
고맙지 만'Runtime.exec()'지나서. –
@AlexanderEliseyev 나는 대답을 다른 더 나은 대안으로 업데이트했다. –
나는 프로세스와 통신 할 수있는 방법이 필요하며 시작하지는 말아야한다. . 외부 CLI와 통신하면서 요청/응답 처리를 쉽게하기위한 도구가 필요합니다. –
- 1. PS3 컨트롤러와 통신 할 Java 라이브러리가 있습니까?
- 2. Perl 5에는 외부 프로그램을 자동화하기위한 도구가 있습니까?
- 3. 외부 장치와의 Bluetooth 통신
- 4. PhoneGap 외부 서버와의 통신
- 5. .NET 외부 통신
- 6. 다운 캐스트를 Java로보고 할 수있는 도구가 있습니까?
- 7. Java, JavaScript 또는 Python을 PHP로 변환 할 수있는 도구가 있습니까?
- 8. Microsoft의 CHESS와 비슷한 Java 용 도구가 있습니까?
- 9. Java 코드베이스의 코딩 스타일을 리팩터링하는 도구가 있습니까?
- 10. 프로그래밍 관련 토론에 더 적합한 통신 도구가 있습니까?
- 11. Javascript Buildmanagement - "꼭 가져야 할"도구가 있습니까?
- 12. Silverlight는 MIDI 악기와 통신 할 수 있습니까?
- 13. Java 용 '어설 션'커버리지 도구가 있습니까?
- 14. Flex와 Java 사이의 통신?
- 15. java 또는 python으로 WCF TCP 서비스와 통신 할 수 있습니까?
- 16. 은 HTML5가 Java Serversocketchannel과 통신 할 수 있습니까?
- 17. Java 애플릿 : 서버와 직렬로 통신 할 수 있습니까?
- 18. Windows Phone 7 외부 통신
- 19. CSS를 인라인 할 수있는 도구가 있습니까?
- 20. JBoss 인스턴스가 통신 할 수 있습니까?
- 21. Java 프로세스 간 통신
- 22. Windows에서 Java 직렬 통신
- 23. 크롬 확장 - 외부 프로그램과의 통신
- 24. PHP, Java 애플릿 통신
- 25. java/java IDE에 대한 의미 론적 쿼리 도구가 있습니까?
- 26. XUL과 Java 사이의 통신
- 27. Java 프로세스 간 통신
- 28. Java SSL 통신
- 29. SSL 통신 Java
- 30. python CLI와 같은 변수 덤프
http://stackoverflow.com/questions/2417495/java-cli-ui-design-frameworks-or-libraries. "Java shell"에 대한 인터넷 검색은 두 가지 가능성을 제시합니다. 임베딩을위한 순수 CLI는 해당 프로젝트에서도 추출 될 수 있습니다. –
@JoopEggen OP가 원하는 것 같지 않습니다. CLI를 구현하지 않고 외부 CLI 도구와 통신해야합니다. –
http://stackoverflow.com/questions/3343066/reading-streams-from-java- run-exec – cherit