티스토리 뷰
안녕하세요!
오늘은 MAC터미널을 이용하여 .java파일을
컴파일 하는 법을 알려드릴려고 합니다!
이 방법은
나는 이클립스를 깔지않고 (진짜) 번거롭더라도 Xcode로 모든것을 하겠다.
...하시는 분들께 추천드립니다.
저도 이클립스를 처음 깔았을 때, 너무 불편했어요.
자동완성이 안될때도 많고 ...
그래서 Xcode로 자바코딩을 하려고 했었어요.
근데 여러 도전을 해봤었는데..
결과적으로 "이클립스가 제일 편하다" 입니다.
이클립스 Run커맨드가 상당히 까다로운데,
이것도 Xcode와 같이 command+R로 바꿔주면 나름 쓰기 괜찮더라구요
ㅎㅎ..
그래도!!!!굳이!!!터미널로 컴파일 하시고 싶으신 분들을 위해
알려드리겠습니다!
이제 알려드릴 방법은 이클립스, Xcode과 상관없이 수행가능한 방법입니다!
1. 먼저 컴파일 하고싶은 자바 코드를 구현해주세요.
저는 가장 기본적인 Hello World!를 출력하는 코드를 짜보았습니다.
2. 터미널을 열어주시고, 현재 .java가 있는 디렉토리로
cd를 이용해 가주세요.
Xcode로 짜셨든, 이클립스로 짜셨든간에요!
모르시는 분들을 위해 설명드리자면,
1. Xcode로 짰을 경우.
해당 파일을 클릭하면 오른쪽에 Full Path가 나오게 됩니다.
!!!!여기서 주의해야할점은!!!!
/Users/Zedd/Desktop/HelloWorld/HelloWorld/HelloWorld.java
를 터미널에 다 치면 안된다는 것이죠.
왜냐하면 HelloWorld.java는 디렉토리가 아니기 때문입니다.
HelloWorld.java를 담고있는 HelloWorld까지만 복사해주셔야합니다.
그러니까 Full path의
/Users/Zedd/Desktop/HelloWorld/HelloWorld/HelloWorld.java
이 부분만 복사해주셔야합니다.
ls를 하니까 HelloWorld.java가 보이죠?
2. 이클립스를 이용해 짰을 경우.
해당 소스를 우클릭한 후 Properties에 들어가주세요.
그러면
이렇게 위치가 나오게 됩니다.
마찬가지로
/Users/Zedd/Documents/workspace/Lab01/src/week1/HelloWorld.java
이부분까지만 복사해주시고 터미널에 cd 다음에 쳐줍니다.
역시나 HelloWorld.java가 잘 있네요.
이제 대망의 컴파일 시간입니다.
이 과정은 Xcode나 이클립스나 똑같으니 따라만 해주세요.
$ javac 자신의파일이름.java
를 터미널창에 쳐주세요.
그리고 엔터를 쳐주면!!!!!!!!!!!!
잠깐의 기다림과 함께 아무일도 일어나지 않게 됩니다..................
는 아니구요.
ls를 해보시면!!!
이렇게 .class파일이 만들어지게 됩니다!!
이제
$ java 자신의파일이름
를 터미널에 쳐주세요.
이때 주의해야 할 점은 .java, .class같은 확장자를 붙히지 않고 파일 이름만을 써주셔야합니다!!!
엔터를 눌러주면!
밑에 Hello World!가 출력된거 보이시죠?
이 글쓰는데도 오류가 많이 생겨서 해결하느라
파일 이름을 수정한 점 양해 부탁드려요.ㅠㅠ
혹시나
오류: HelloWorld 클래스에서 기본 메소드를 찾을 수 없습니다. 다음 형식으로 기본 메소드를 정의하십시오.
public static void main(String[] args)
또는 JavaFX 애플리케이션 클래스는 javafx.application.Application을(를) 확장해야 합니다.
라는 오류가 나오셨다면!
1. 라이브러리 클래스에 이미 정의되어 있는 클래스 이름을 사용할 때
2. 소스코드 작성 후 파일을 저장하지 않고 컴파일을 했을 때
입니다.
저는 이미 정의되어있는 클래스 이름을 사용해서 저런 오류가 난 것이었어요!
주의하셔요 ㅎㅎㅎ
한번 .class로 만들어놓기만 하면 언제든지
$ java 파일명으로 컴파일이 가능해요!
도움이 되었으면 좋겠어요!!
'공부' 카테고리의 다른 글
선택정렬 알고리즘 C++ 소스코드(Selection Sort Source Code) (0) | 2017.03.29 |
---|---|
JAVA ) 오류: 기본 클래스 ...을(를) 찾거나 로드할 수 없습니다. (39) | 2017.03.10 |
합병정렬(Merge Sort) 알고리즘 정리 ( 개념 / 시간복잡도 - O(nlogn) ) (25) | 2017.03.05 |
정렬 알고리즘 - Quick Sort (평균- nlogn, 최악- n^2) (21) | 2017.03.01 |
git README.md에 그림넣기!! (1) | 2017.02.24 |
- swift delegate
- swift3
- actor
- WWDC
- FLUTTER
- Combine
- 회고
- WidgetKit
- IOS
- 피아노
- swift tutorial
- 스위프트
- swift array
- swift 공부
- UIBezierPath
- swift sort
- ios 13
- github
- 제이슨 파싱
- WKWebView
- Git
- np-complete
- Accessibility
- Swift
- np-hard
- iOS delegate
- fastlane
- SwiftUI
- 스위프트 문법
- Xcode
- Total
- Today
- Yesterday