본문 바로가기
개발 공부/Java

[자바다] 맥 터미널에서 다른 클래스 참조하면서 자바 파일 실행시키는 법

by 반달bear 2022. 8. 8.
반응형

이상하게 하다가 왜 안돼지????;;;;를 연발했는데 중요한걸 간과했다는 사실이 웃길 따름..ㅎㅎ

우선 환경변수가 설정 후 파일이 있는 폴더에 들어가서 .java 파일을 .class로 만들어주고 .class를 실행해줍니다. 다른 파일을 참조하고 싶을때는 파일명을 열거하면 돼요!

#.java->.class
javac filename.java

#.class->실행
java filename1 filename2 filename3

그럼 성공!

 

 

javac 명령어를 사용할 때는 .파일명 뒤에 java를 붙이지만 java 명령어를 사용할 때는 파일명 뒤에 .java를 붙이면 안돼요.

java filename.java로 파일을 실행시키면 클래스 파일을 실행시키는게 아니라 .java파일을 다시 컴파일하고 실행시키기 때문에 그 안에 무조건 main 메소드가 들어가 있어야 합니다. 간단한 예제면 몰라도 다른 클래스를 참조하거나 다른 파일에 있는 객체를 참조하고 싶으면 .java를 붙이면 안돼요.

 

 

또 하나 주의할 점!!!!!!

main 메소드가 들어가 있는 파일을 제일 앞에 위치시켜야 합니다.

저의 경우 Ch6_StudentExample 파일에 메인 메소드가 있습니다.

 

 

이클립스나 vscode와 터미널의 차이가 있다면 .class 파일의 위치라고 할 수 있습니다.

저는 vscode을 사용하고 있는데 vscode는 자바를 컴파일한 후 클래스 파일을 bin이라는 폴더에 자동으로 저장하고 실행합니다. 그런데 터미널은 bin을 인지하지 못하는지 제가 실행시키고 싶은 파일이 있는 해당 클래스 파일이 없으면 컴파일부터 시켜!!! 라고 합니다. 클래스 파일이 있는 bin으로 들어가서 실행시켜도 linkage error가 뜨고요.

아직 저 에러를 해결할 실력은 안됨으로 자바 파일이 있는 폴더에서 컴파일을 시킨 후 실행하는 방법으로 gogo.

열거타입도 위와 비슷하게 실행시켜주면 됩니다.

 

 

메인 메소드의 args 값을 입력한 채로 실행하고 싶으시다면

java filename 값 값

이렇게 실행시켜주면 됩니다.

 

 

 

너무 간단하죠?

저는 뒤에 .java를 빠트려서 계속 실행이 안됐었어요ㅠㅠ 

 

반응형

댓글