Mac에서 IntelliJ IDEA가 실행이 안되는 경우(JDK)




맥에서 IntelliJ IDEA를 설치후 실행을 하면 Java SE 6를 설치를 해야한다고 하면서 실행이 안된다.

OS X에서 Java 7/8버전에 문제가 있기때문이라고 한다. JetBrains에서는 Apple JDK 1.6버전을 추가로 설치해서 실행하기를 권장한다.


JDK 문제점: https://intellij-support.jetbrains.com/entries/27854363

Apple JDK 다운로드: http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US


Java 9버전에서는 문제가 해결될 수도 있다고 함 -_-;;

Mac에서 Oracle Java(JDK) 설치하기

아래 링크에서 최신버전 JDK를 다운 받는다. (이글은 Java 8을 기준으로 작성)


Java8 다운로드: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

 

이전버전 다운로드: http://www.oracle.com/technetwork/java/javase/archive-139210.html


아래 그림과 같이 라이선스에 동의한다고 체크하고 파일을 다운로드 한다.




다운로드 한 파일을 실행시키고 아래와 같이 패키지 아이콘을 더블 클릭해서 설치를 진행한다.




설치가 끝나고 터미널에서 java -version을 입력해서 아래와 같이 나오면 정상적으로 설치된 것이다.

$ java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)



(옵션) 여러버전의 자바가 설치된 경우 아래의 예처럼 java_home 툴을 이용해서 설정이 가능하다.

$ /usr/libexec/java_home -v 1.8.0_31 --exec javac -version


(옵션2) JAVA_HOME 설정

Oracle Java를 설치한 후에 쉘 환경 파일에(.profile 등) 아래와 같이 설정을 한다.

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

다른 버전의 Java를 사용할 경우 1.8 대신에 원하는 버전을 입력하면 된다.



자바 디렉토리 삭제하기(Delete a non-empty directory in JAVA)

자바에서 파일을 삭제하려면 File 클래스에서 delete() 메소드를 사용하면 된다.

File file = new File("pathname");
file.delete();


하지만 delete() 메소드는 해당 path 가 디렉토리일 경우 디렉토리가 비어 있을때만 삭제가 된다. 디렉토리 안에 파일이나 하위 디렉토리가 있을 때 삭제하려면 다음과 같이 recursive 메소드를 사용해서 삭제할 수 있다.

import java.io.File;


class DeleteDir {
	public static void main(String args[]) {
		deleteDirectory(new File(args[0]));
	}
	
	public static boolean deleteDirectory(File path) {
		if(!path.exists()) {
			return false;
		}
		
		File[] files = path.listFiles();
		for (File file : files) {
			if (file.isDirectory()) {
				deleteDirectory(file);
			} else {
				file.delete();
			}
		}
		
		return path.delete();
	}
}