eclipse关机按钮无法关闭嵌入式tomcat使用的弹簧启动

时间:2016-05-17 11:47:03

标签: spring-boot embedded-tomcat-8

我在Spring启动应用程序中使用嵌入式tomcat。 我打算使用下面的目标:

clean spring-boot:run

并且运行时没有错误。我使用eclipse关机按钮将其关闭。 第二次我尝试运行它我得到了这个:

Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project cpanel: Failed to clean project: Failed to delete XXXXXXXXX\target\classes\hibernate\security\user\User.hbm.xml -> [Help 1]
它的sims tomcat无法下次删除目标。什么是我的tomcat错了? 我做错了吗?

我在application.yml中的服务器配置:

server:
compression:
    enabled: true
port: 8080
servlet-path: /rest

和我的tomcat依赖:

<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <scope>provided</scope>
</dependency>

3 个答案:

答案 0 :(得分:2)

要解决此问题,请更改tomcat maven plugin并将fork添加到false

   <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
            <fork>false</fork>
        </configuration>
  </plugin>

答案 1 :(得分:1)

我写了这个bat脚本命令:

FOR /F "tokens=5 delims= " %%P IN ('netstat -a -n -o ^| findstr :8080.*LISTENING') DO TaskKill.exe /PID %%P /F pause 并将其保存在killport.bat中,然后使用maven-antrun-plugin调用它:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>1.6</version>
    <executions>
        <execution>
            <phase>compile</phase>
            <configuration>
                <target>
                    <exec executable="cmd.exe" spawn="true">
                        <arg value="/c" />
                        <arg value="F:\Java\Projects\killport.bat" />
                    </exec>
                </target>
            </configuration>
            <goals>
                <goal>run</goal>
            </goals>
        </execution>
    </executions>
</plugin>

答案 2 :(得分:0)

只需在pom.xml文件的spring-boot-maven-plugin中添加以下标记

            <configuration>
                <fork>false</fork>
            </configuration>

这是完整的示例:

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <configuration>
                        <fork>false</fork>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>