2014-07-18 2 views
2

저는 grails 프로그래머로서 war 파일에 포함 된 불필요한 jar 파일을 제거하려고합니다. war 파일에 너무 많은 불필요한 jar 파일이 포함되어 있습니다. 그렇게 할 수있는 빠른 해결책이 있습니까? 또한 간단한 grails war를 만들고 실행하는 데 필요한 jar 파일에 대해서도 언급 할 수 있습니다.모든 불필요한 jar 파일을 war 파일에서 제외하십시오.

+1

는 당신이 "불필요한 jar 파일"의 예를 줄 수 최대 절전 모드 코어를 제거? 무슨 뜻인지 알지 못하면 질문에 대답하기가 어렵습니다. 내 말은, 당신은 grails를 사용하여 war -nojars를 사용하여 모든 jar 파일을 제외하고 "스키니 전쟁"파일을 만들 수 있지만 모든 jar 파일은 포함되지 않습니다. –

+0

내 프로젝트에 데이터베이스가 없어서 데이터 소스 파일을 삭제했습니다. 이제 h2를 제거하고 jar를 최대 절전 모드로 만듭니다. 하지만 그들을 제거하면 오류가 발생합니다. 따라서 프로젝트를 실행하는 데 필요한 최소한의 jar 파일 만 포함시키고 싶습니다. 프로젝트를 실행하는 데 필요한 jar 파일 목록이 있습니까? 감사합니다 – Biswas

답변

0

BuildConfig.groovy에 다음 행을 추가하여 전쟁에서 불필요한 jar를 제외 할 수 있습니다.

grails.war.resources = { stagingDir -> 
    delete(file:"${stagingDir}/WEB-INF/lib/jarFileName.jar") 
} 

예 :

grails.war.resources = { stagingDir -> 
    delete(file:"${stagingDir}/WEB-INF/lib/hibernate-core-3.3.1.GA.jar") 
} 
+0

안녕 Ramsharan, 나는 이것을 시도했지만 내가 h2를 제거하고 항아리를 항아리 때, 배포 오류를 throw합니다. 혹시라도 배포에 필요한 jar 파일 목록이 있는지 확인하십시오. 감사합니다 – Biswas

+0

오류 스택 트레이스를 제공해 주시겠습니까? run-app 또는 run-war 명령을 사용하거나 별도의 Tomcat을 사용하여 응용 프로그램을 배포하는 방법은 무엇입니까? 배포에 필요한 최소한의 jar 파일을 나열한 적이 전혀 없습니다. – Ramsharan

+0

tomcat에 배포하고 run-war 명령을 사용했습니다. run-app에서는 모든 것이 좋습니다. stacktrace는 다음과 같습니다. 2014-07-22 21 : 55 : 17,454 [localhost-startStop-1] 오류 context.ContextLoader - 컨텍스트 초기화에 실패했습니다. org.springframework.beans.factory.BeanCreationException : 'pluginManager' ServletContext 리소스 [/WEB-INF/applicationContext.xml] : init 메소드를 호출하지 못했습니다. 중첩 예외는 java.lang.NoClassDefFoundError입니다. javax/persistence/Entity at java.util.concurrent.FutureTask.run (FutureTask.java:262) – Biswas

관련 문제