2012-10-26 2 views
0

정리하고 빌드 할 때 Netbeans 내 Java 프로젝트에 대한 .jar 파일을 생성하고 사용하는 모든 외부 Jar 파일을 "lib"폴더를 사용합니다. NetBeans에 이러한 Jar 파일을 .jar 파일로 패키징하도록 알릴 수 있습니까? 그래서 내 프로젝트를 독립 실행 형 .jar 파일로 실행할 수 있습니까? 넷빈즈에서 어떤 옵션도 그렇게하지 않으려면Netbeans 생성 .jar 파일

나는 맥 OSX

+0

http://stackoverflow.com/ question/2212913/netbeans-all-in-one-jar –

답변

1

짧은 대답은 아니오, 긴 대답은 복잡합니다.

첫째, Java는 내장 된 Jar를 지원하지 않습니다 (즉, 종속 Jar를 주 Jar에 간단하게 추가 할 수 없습니다).

둘째, 모든 Jar 파일의 압축을 풀고 하나의 Jar 파일로 병합하면 동일한 경로/이름을 공유하는 모든 리소스/클래스를 덮어 씁니다. 이것은 소규모 프로젝트에서는 문제가되지 않지만 대형 프로젝트에서는 큰 문제입니다 (우리가 작업중인 프로젝트에서이 문제가 있습니다).

하나의 해결 방법은 One-Jar과 같은 것을 사용하는 것입니다.이 방법은 기본적으로 단일 Jar에 포함 된 Jars를 참조하는 모든 사용자에게 자체 부트 클래스 로더를 사용합니다.

우리 고유의 사용자 정의 클래스 로더를 사용할 때이 문제가 있었지만 그렇지 않은 경우 제대로 작동하는 것 같습니다.

당신이 당신의 자신의 빌드 프로세스 고안해야합니다, 그렇지 않으면 그것은 개미 지원을 포함, 그래서 프로젝트에서 Ant 빌드 스크립트는 메이븐을 사용하지 않을 경우, 그것을 포함 할 수

+0

.jar 파일은 올바른 드라이버를 어디에서 얻을 수 있는지 어떻게 알 수 있습니까? .jar 파일 외부에 "lib"폴더가 있어야합니까? – CodeGuy

+0

클래스 로더가 종속 클래스를 찾기 위해 사용하는 기본 jar 파일의 매니페스트 파일 안에 class-path 속성이 있습니다. 자세한 내용은 [매니페스트 파일 작업] (http://docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html)을 참조하십시오. – MadProgrammer

0

에 넷빈즈 7.1.1를 사용하고 있습니다.

빠른 검색이 도움이되지만 수동 개입이 필요한 다른 옵션이 있습니다.