2011-04-19 2 views
1

지금 Java 프로젝트를 설정 중입니다. 과거에는 ant, junit, jfreechart 및 기타와 같은 제 3 자의 모든 항목 (압축이 풀린 상태)이 우리 릴리스에 항상 포함되었습니다. 그저 관련된 .jar 파일을 가져갈 수는 있지만 소프트웨어 릴리스가있는 모든 것이 아닌가 궁금합니다. 그러면 우리는 작고 깔끔한 버전을 얻을 수 있습니다. 제 3 자 라이브러리 라이센스로는 그렇게 할 수 없습니까? 너 뭐야? 감사합니다,3rdparty lib/소프트웨어를 Java 소프트웨어에 어떻게 포함 시키시겠습니까?

답변

0

면허로 소스와 함께 파생 상품을 배포해야한다고 말하면 법으로 그 의무를 이행해야합니다.

또 다른 질문은 실제로 강제하는 것입니다. GPL을 기억하는 한 원할 경우 소스를 배포해야하지만 또 다른 방법이 있습니다. 소스를 사용자가 쉽게 사용할 수 있도록해야합니다. 따라서 배포 물에 소스를 드롭 할 수 있습니다.

어떤 방법 으로든 라이센스를 확인해야합니다.

는 편집 :

당신이 하나의 단지로 전체 프로그램을 포장하기로 결정한다면

, 나는 Proguard하는 것이 좋습니다. 자바 옵티 마이저, 수축기 등 - 모두 하나로! 모든 것을 하나의 jar 파일로 압축하려면 모든 jar (프로그램 및 라이브러리)를 프로그램 jar로 지정하고 하나의 jar 만 출력으로 지정하십시오. 보통 잘 작동합니다.

0

가능한 경우 별도의 병을 보관해야합니다. Maven appassembler 플러그인을 확인하십시오. 그것은 통제 된 방식으로 당신에게 "해독 할 수없는"설치를 조립하는 훌륭한 일을합니다. 결과에서 모든 의존성이있는 매우 간단한 "repo"디렉토리를 갖게됩니다.

0

maven-assembly-plugin을 사용하여 각 응용 프로그램에 대해 단일 병을 작성합니다. 플러그인은 모든 라이브러리 항아리의 압축을 풀고 단일 항아리로 전체를 다시 모으는 등의 번거로운 작업을 신속하게 처리합니다. 또한 응용 프로그램을 명령 줄에서 간단하게 실행하는 기본 클래스가 지정된 매니페스트 작성을 지원합니다 (어쨌든 클래스 패스 인수를 지정하는 것보다 훨씬 간단합니다).

관련 문제