Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Windows上的Spring可执行jar错误_Java_Spring_Maven_Tomcat7 - Fatal编程技术网

Java Windows上的Spring可执行jar错误

Java Windows上的Spring可执行jar错误,java,spring,maven,tomcat7,Java,Spring,Maven,Tomcat7,我已经创建了以下可执行jar 我正在MacOS上使用STS程序。创建jar文件后,它在MacOS上运行良好,但在Windows上我遇到以下错误: INFO: Starting Servlet Engine: Apache Tomcat/7.0.30 Apr 12, 2017 6:42:48 PM org.apache.catalina.startup.ContextConfig init SEVERE: Exception fixing docBase for context [] java.i

我已经创建了以下可执行jar

我正在MacOS上使用STS程序。创建jar文件后,它在MacOS上运行良好,但在Windows上我遇到以下错误:

INFO: Starting Servlet Engine: Apache Tomcat/7.0.30
Apr 12, 2017 6:42:48 PM org.apache.catalina.startup.ContextConfig init
SEVERE: Exception fixing docBase for context []
java.io.FileNotFoundException: C:\Users\John\.extract\webapps\ROOT.war (The system cannot find the file specified)
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(Unknown Source)
        at java.util.zip.ZipFile.<init>(Unknown Source)
        at java.util.jar.JarFile.<init>(Unknown Source)
        at java.util.jar.JarFile.<init>(Unknown Source)
        at sun.net.www.protocol.jar.URLJarFile.<init>(Unknown Source)
        at sun.net.www.protocol.jar.URLJarFile.getJarFile(Unknown Source)
        at sun.net.www.protocol.jar.JarFileFactory.get(Unknown Source)
        at sun.net.www.protocol.jar.JarURLConnection.connect(Unknown Source)
        at sun.net.www.protocol.jar.JarURLConnection.getJarFile(Unknown Source)
        at org.apache.catalina.startup.ExpandWar.expand(ExpandWar.java:113)
        at org.apache.catalina.startup.ContextConfig.fixDocBase(ContextConfig.java:720)
        at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:843)
        at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:387)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
        at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401)
        at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:110)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

Apr 12, 2017 6:42:48 PM org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Invalid or unreadable WAR file : C:\Users\John\.extract\webapps\ROOT.war
        at org.apache.naming.resources.WARDirContext.setDocBase(WARDirContext.java:136)
        at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4906)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5086)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

Apr 12, 2017 6:42:48 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error in resourceStart()
Apr 12, 2017 6:42:48 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error getConfigured
Apr 12, 2017 6:42:48 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [] startup failed due to previous errors
Apr 12, 2017 6:42:48 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
INFO:启动Servlet引擎:ApacheTomcat/7.0.30
2017年4月12日下午6:42:48 org.apache.catalina.startup.ContextConfig init
严重:修复上下文[]的docBase时出现异常
java.io.FileNotFoundException:C:\Users\John\.extract\webapps\ROOT.war(系统找不到指定的文件)
位于java.util.zip.ZipFile.open(本机方法)
位于java.util.zip.ZipFile。(未知源)
位于java.util.zip.ZipFile。(未知源)
位于java.util.jar.JarFile。(未知源)
位于java.util.jar.JarFile。(未知源)
位于sun.net.www.protocol.jar.URLJarFile。(来源不明)
位于sun.net.www.protocol.jar.URLJarFile.getJarFile(未知源)
位于sun.net.www.protocol.jar.JarFileFactory.get(未知源)
位于sun.net.www.protocol.jar.JarURLConnection.connect(未知源)
位于sun.net.www.protocol.jar.JarURLConnection.getJarFile(未知源)
位于org.apache.catalina.startup.ExpandWar.expand(ExpandWar.java:113)
位于org.apache.catalina.startup.ContextConfig.fixDocBase(ContextConfig.java:720)
位于org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:843)
位于org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:387)
在org.apache.catalina.util.LifecycleSupport.FireLifecycleSupport(LifecycleSupport.java:119)上
位于org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
位于org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401)
位于org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:110)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
位于java.util.concurrent.FutureTask.run(未知源)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(未知源)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(未知源)
位于java.lang.Thread.run(未知源)
2017年4月12日下午6:42:48 org.apache.catalina.core.StandardContext资源启动
严重:启动静态资源时出错
java.lang.IllegalArgumentException:无效或不可读的WAR文件:C:\Users\John\.extract\webapps\ROOT.WAR
位于org.apache.naming.resources.WARDirContext.setDocBase(WARDirContext.java:136)
位于org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4906)
位于org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5086)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
位于java.util.concurrent.FutureTask.run(未知源)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(未知源)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(未知源)
位于java.lang.Thread.run(未知源)
2017年4月12日下午6:42:48 org.apache.catalina.core.StandardContext startInternal
严重:resourceStart()中出现错误
2017年4月12日下午6:42:48 org.apache.catalina.core.StandardContext startInternal
严重:配置错误
2017年4月12日下午6:42:48 org.apache.catalina.core.StandardContext startInternal
严重:由于以前的错误,上下文[]启动失败
2017年4月12日下午6:42:48 org.apache.coyote.AbstractProtocol开始
信息:正在启动ProtocolHandler[“http-bio-8080”]
My pom.xml包含以下用于创建jar的部分:

 <plugins>
        <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.0</version>
        <executions>
            <execution>
                <id>tomcat-run</id>
                <goals>
                    <goal>exec-war-only</goal>
                </goals>
                <phase>package</phase>
                <configuration>
                    <server>192.168.1.85</server>
                    <path>/</path>
                    <enableNaming>false</enableNaming>
                    <finalName>guard_server.jar</finalName>
                    <charset>utf-8</charset>
                </configuration>
            </execution>
        </executions>
    </plugin>
    </plugins>

org.apache.tomcat.maven
tomcat7 maven插件
2
雄猫赛跑
仅限执行战争
包裹
192.168.1.85
/
假的
guard_server.jar
utf-8
有什么解决办法吗

UPD:在Windows上编译项目后,问题仍然存在,因此它不是平台问题