2012-01-06 3 views
0

Tomcat 7 웹 서버에 웹 응용 프로그램을 배포 할 때 문제가 있습니다. 나는 개미를 통해 내 WAR 파일을 배포하여 시도하고 나는 다음과 같은 오류가 발생했습니다ANT 및 tomcat-manager를 통해 tomcat 7에 내 .war 파일을 배포 할 수 없습니다.

java.lang.NoClassDefFoundError: Could not initialize class java.nio.file.TempFileHelper 
[java]  at java.nio.file.Files.createTempFile(Unknown Source) 
[java]  at sun.net.www.protocol.jar.URLJarFile$1.run(Unknown Source) 
[java]  at sun.net.www.protocol.jar.URLJarFile$1.run(Unknown Source) 
[java]  at java.security.AccessController.doPrivileged(Native Method) 
[java]  at sun.net.www.protocol.jar.URLJarFile.retrieve(Unknown Source) 
[java]  at sun.net.www.protocol.jar.URLJarFile.getJarFile(Unknown Source) 
[java]  at sun.net.www.protocol.jar.JarFileFactory.get(Unknown Source) 
[java]  at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source) 
[java]  at sun.net.www.protocol.jar.JarURLConnection.getJarFile(Unknown Source) 
[java]  at org.apache.catalina.startup.TldConfig.tldScanJar(TldConfig.java:507) 
[java]  at org.apache.catalina.startup.TldConfig.access$100(TldConfig.java:59) 
[java]  at org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java:332) 
[java]  at org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:234) 
[java]  at org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:159) 
[java]  at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:306) 
[java]  at org.apache.catalina.startup.TldConfig.lifecycleEvent(TldConfig.java:585) 
[java]  at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
[java]  at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89) 
[java]  at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4974) 
[java]  at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) 
[java]  at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812) 
[java]  at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787) 
[java]  at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:607) 
[java]  at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:925) 
[java]  at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:723) 
[java]  at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470) 
[java]  at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1343) 
[java]  at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:294) 
[java]  at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
[java]  at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89) 
[java]  at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1235) 
[java]  at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1393) 
[java]  at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1403) 
[java]  at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1382) 
[java]  at java.lang.Thread.run(Unknown Source) 

웹 응용 프로그램의 폴더가 내 톰캣의 webapps 폴더에 생성되지만를 통해 응용 프로그램에 액세스하려고 할 때 :

http://localhost:8080/Natura_WEB

응용 프로그램이 존재하지 않는다는 404 오류가 표시됩니다.

또한 tomcat-manager를 통해 내 응용 프로그램을 배포하려고 시도했지만 응용 프로그램이 올바르게 배포되었지만 tomcat 응용 프로그램 목록에는 포함되어 있지 않지만 폴더도 webapps 디렉토리에 만들어졌으며 브라우저에서 액세스하려고하면 이전과 같은 오류가 발생합니다.

정확히 다른 컴퓨터에 같은 war 파일을 배포하려고 시도했기 때문에이 파일은 분명히 Tomcat 오류라는 것을 알고 있으며 완벽하게 작동했습니다.

이 문제를 해결할 수있는 방법에 대한 제안 사항이 있으십니까?

답변

0

종속성 병을 찾을 수 없기 때문에 제대로 배포되지 않습니다.

는 해당 파일을 포함하는 항아리, 그 클래스를 찾기 위해이 클래스 "java.nio.file.TempFileHelper"

시도를 찾을 수 알아낼 수 없습니다.

그리고이 jar 파일을 WEB-INF/lib에 넣고 다시 배포하십시오. 작동해야합니다.

+0

궁금한 점은 왜 동일한 전쟁 파일이 한 컴퓨터에서는 완벽하게 작동하지만 다른 컴퓨터에서는 완벽하게 작동하지 않는 이유입니까? 이 작업은 설치된 JDK와 관련이 있습니까? – user1084509

+0

은 해당 머신의 공통적 인 tomcat lib 디렉토리 일 수 있으며,이 디렉토리는 tht jar를 포함하며 클래스를 전역 컨텍스트로 찾을 수 있습니다. 해당 jar가 포함되어 있는지 여부에 상관없이 해당 컴퓨터의 공통적 인 tomcat 라이브러리를 확인하십시오. –

관련 문제