我一直试图使用弹簧启动部署我的tomcat服务器几天,但我不能在我的生活中找出我的配置错误。我在网上看了几个建议,但我仍然无法弄清楚我做错了什么。我觉得这可能是一点点但是在这一点上,我认为我无法解决这个问题
我有我的maven配置文件,我正在尝试利用apache tomcat maven插件来部署我的服务器。
HTTP://maven.Apache.org/下水道/maven-4.0.0.下水道"> 4.0.0
<groupId>com.blah.maven</groupId> <artifactId>blah</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <name>foo</name> <properties> <springframework.boot.version>1.5.9.RELEASE</springframework.boot.version> </properties> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- <scope>provided</scope> --> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <url>http://localhost:8080/manager/text</url> <path>/blah</path> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${springframework.boot.version}</version> </plugin> </plugins> </build> </project>
在我的项目中,我有一个Application类
package foo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.web.WebApplicationInitializer;
@SpringBootApplication
public class Application extends SpringBootServletInitializer implements WebApplicationInitializer {
public static void main(String [] args){
SpringApplication.run(Application.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application){
return application.sources(Application.class);
}
}
这是我的堆栈的屏幕截图
[错误]无法执行目标org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy(default-cli)on project whot:无法调用Tomcat管理器:连接被拒绝(连接被拒绝) - > [帮助1] org.apache.maven.lifecycle.LifecycleExecutionException:无法执行目标org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy(default-cli)on project whot:无法在org.apache.maven中调用Tomcat管理器.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)位于org.apache.maven.lifecycle.internal.MojoExecutor.execute的org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) (MojoExecutor.java:145)org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)位于org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)at at在org.apache.maven上的org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)。 life.internal.LifecycleStarter.execute(LifecycleStarter.java:128)org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)atg.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)at org .apache.maven.DefaultMaven.execute(DefaultMaven.java:106)org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)org.apache.maven.cli.MavenCli.doMain(MavenCli.java) :288)atg.apache.maven.cli.MavenCli.main(MavenCli.java:199)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43),位于org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced的java.lang.reflect.Method.invoke(Method.java:498)中(Launcher.java: 289)org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)org.codehaus.p lexus.classworlds.launcher.Launcher.main(Launcher.java:356)at org.codehaus.classworlds.Launcher.main(Launcher.java:47)引起:org.apache.maven.plugin.MojoExecutionException:无法调用Tomcat管理器org.apache.tomcat.maven.plugin.tomcat7.AbstractCatalinaMojo.execute(AbstractCatalinaMojo.java:141)org.apache.tom上的org.apache.tomcat.maven.plugin.tomcat7.AbstractWarCatalinaMojo.execute(AbstractWarCatalinaMojo.java:68) .maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)... 21更多引起:java.net.ConnectException:在java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)的java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)的java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)上的java.net.PlainSocketImpl.socketConnect(Native Method)连接被拒绝(连接被拒绝) java上的.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) .net.SocksSocketImpl.connect(SocksSocketImpl.java:392)at java..Socket.connect(Socket.java:589)at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:117)at at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:178)位于org.apache.http.impl的org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:304)。 client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:610)atg.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:445)at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient。 java:863)org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)org.apache.tomcat.maven.common.deployer.TomcatManager.invoke(TomcatManager.java:742)at org org.apache.tomcat.maven.common.deploy上的.apache.tomcat.maven.common.deployer.TomcatManager.deployImpl(TomcatManager.java:705) er.TomcatManager.deploy(TomcatManager.java:388)位于org.apache.tomcat.maven.plugin.tomcat7的org.apache.tomcat.maven.plugin.tomcat7.deploy.AbstractDeployWarMojo.deployWar(AbstractDeployWarMojo.java:85)。 deploy.AbstractDeployMojo.invokeManager(AbstractDeployMojo.java:82)at org.apache.tomcat.maven.plugin.tomcat7.AbstractCatalinaMojo.execute(AbstractCatalinaMojo.java:132)... 24 more [ERROR] [ERROR] [ERROR] For有关错误和可能的解决方案的更多信息,请阅读以下文章:[错误] [帮助1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
您可能需要配置Tomcat身份验证。
按照https://www.mkyong.com/maven/how-to-deploy-maven-based-war-file-to-tomcat的这个例子
在Maven方面:
这对我来说是一个完全的大脑放屁。我试图部署应用程序(mvn tomcat:deploy),而实际上没有运行tomcat的实例。我真正想做的是在我的maven项目中创建并运行一个tomcat实例(mvn tomcat:run)。
无法相信我花了很多时间在一些如此微不足道的事情上。哦,生活和学习。