2011-02-10 5 views
1

실행 : 내가 뭐가 잘못 됐는지 궁금하네요컴파일이 .bat 파일을 감안할 때 자바 파일 배치 파일 문제

@ECHO OFF 

echo === Compiling and executing bat file === 


md C:\my_project\dir_prog\class_files 


copy ProgAudioJ.java C:\my_project\dir_prog 


javac -d C:\my_project\dir_prog\class_files ProgAudioJ.java 


java -classpath C:\my_project dir_prog.class_files.ProgAudioJ 

합니다.

그냥 작동하지 않습니다.

나는 그것이라는 디렉토리 class_files의 클래스 파일 (그래서 컴파일 과정이 괜찮습니다) 배치하지만, 프로그램이 실행되지 않습니다 말은 ... 당신의 도움 MAX

+2

박쥐 파일의 출력이 있습니까? ProgAudioJ.java의 소스 코드를 게시 할 수 있습니까? –

+3

도움이 필요한 문제가있는 경우 "그냥 작동하지 않습니다"에서 멈추지 마십시오. 출력되는 내용, 오류 메시지의 의미, 일어날 것으로 예상되는 것, 실제로 일어나고있는 것 등을 알려주십시오. 이는 발생한 모든 유형의 컴퓨터 문제에 적용됩니다. –

답변

1

에 대한

덕분에 당신이 있습니까 프로젝트 내에서 메인 클래스를 정의했으며이 클래스의 public static void main (String [] args) 메서드를

public static void main (String [] args) 메서드로 정의 했습니까? ... 그 방법은 쉘에서 물건을 실행할 때 호출 를 얻을 기억

편집 :

1

내가 첫 번째 문제는 사용자가 지정해야한다는 생각 Running a Java Program from Command Prompt @ SkylightPublishing.com

HTH :이 포괄적 인 개요 유용을 찾을 수 있습니다 classpath의 class_files 디렉토리.

둘째 문제는 실행할 클래스의 정규화 된 이름을 지정해야한다는 것입니다. 이는 Java 소스 파일에 정의한 패키지에 따라 다 (니다.

그래서이 같은 작업을해야합니다 :

java -classpath c:\my_project\dir_prog\class_files ProgAudioJ 

은 소스 파일의 내용을 제공 할 수 있습니다 (I 즉 어떤 패키지, 클래스는 기본 패키지에 없다고 가정하고 있습니다)?

+0

답장을 보내 주셔서 감사합니다. 나는 당신의 제안을 따르려고했지만 불행히도 그것은 작동하지 않습니다. 소스 파일에 패키지를 지정하지 않았습니다. 할까 ? – MAX

+0

위의 명령을 bat 파일 또는 명령 줄에서 실행하고 있습니까? 둘 다 시도해 볼 수 있습니까? ProgAudioJ.java의 소스 코드를 게시 할 수 있습니까? 출력은 무엇입니까? –

+0

출력은 wav 파일 플레이어 및 레코더 및 결합 자입니다. 명령 줄에서 실행하면이 오류가 발생합니다. 스레드 "main"의 예외 java.lang.NoClassDefFoundError : ProgAudioJ/jav 발생 원인 : java.lang. ClassNotFoundException : ProgAudioJ.java at java.net.URLClassLoader $ 1.run (알 수없는 소스) 프로그램이 종료됩니다. – MAX

0

코드와 명령이 맞으면 javac의 비동기 실행이나 파일 시스템과 관련된 지연이 의심됩니다.

일시 중지 명령을 추가하여 문제가 명령 실행의 신속성인지 또는 문제가 명령에 있는지 확인하십시오.