tomcat:déployer: “Ne peut invoquer le Tomcat manager: Connexion refusée”
J'ai essayé de déployer mon application sur Tomcat à l'aide de Maven et j'ai trouvé cette de l'échantillon.
Que le fragment de mon pom.xml:
<!-- Maven Tomcat Plugin -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<url>http://127.0.0.1:8080/</url>
<server>TomcatServer</server>
</configuration>
</plugin>
<!-- Maven compiler plugin -->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
Et quand je lance tomcat:deploy
, j'obtiens cette erreur: Cannot invoke Tomcat manager: Connection refused
. C'est plein stacktrace:
[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:deploy (default-cli) on project webapp: Cannot invoke Tomcat manager: Connection refused: connect -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:deploy (default-cli) on project webapp: Cannot invoke Tomcat manager
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: org.apache.maven.plugin.MojoExecutionException: Cannot invoke Tomcat manager
at org.codehaus.mojo.tomcat.AbstractCatalinaMojo.execute(AbstractCatalinaMojo.java:149)
at org.codehaus.mojo.tomcat.AbstractWarCatalinaMojo.execute(AbstractWarCatalinaMojo.java:70)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 25 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:388)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:523)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:227)
at sun.net.www.http.HttpClient.New(HttpClient.java:300)
at sun.net.www.http.HttpClient.New(HttpClient.java:317)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:970)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:911)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:836)
at org.codehaus.mojo.tomcat.TomcatManager.invoke(TomcatManager.java:597)
at org.codehaus.mojo.tomcat.TomcatManager.deployImpl(TomcatManager.java:662)
at org.codehaus.mojo.tomcat.TomcatManager.deploy(TomcatManager.java:295)
at org.codehaus.mojo.tomcat.AbstractDeployWarMojo.deployWar(AbstractDeployWarMojo.java:85)
at org.codehaus.mojo.tomcat.AbstractDeployMojo.invokeManager(AbstractDeployMojo.java:85)
at org.codehaus.mojo.tomcat.AbstractCatalinaMojo.execute(AbstractCatalinaMojo.java:141)
... 28 more
Je ne voulais pas utiliser l'authentification alors j'ai juste sauté de ces étapes. J'ai pensé que cela pourrait causer de mon erreur, mais quand j'ai essayé de les ajouter, rien n'a changé. Savez-vous où est mon erreur?
UPD: Désolé, mais je ne peux pas vérifier nos solutions parce que je ne suis pas à travailler sur ce projet plus. Mais je ne vais pas fermer cette question, donc si vous pensez que votre solution fonctionne hésitez pas à gauche ici et peut-être cela aidera à quelqu'un.
- Est Tomcat en cours d'exécution et lié à localhost? Ce n'
netstat -an
dites-vous? - Me semble qu'il n'est pas en cours d'exécution. J'ai essayé de lancer Tomcat à l'aide de démarrage.chauve-souris, puis de lancer tomcat:déployer à partir de l'IDE aaaand...
java.lang.OutOfMemoryError: Java heap space
. J'ai essayé de déboguer et ont trouvé qu'il provoque quand maven essayez de copier certains 128 mo de tableau de taille. - J'ai eu la stupide question de ne pas courir le starutp.chauve-souris de Tomcat. Assurez-vous de vérifier.
Vous devez vous connecter pour publier un commentaire.
Lors de l'utilisation de tomcat 7 plugin, procédez de la manière suivante:
pom.xml
settings.xml
tomcat-users.xml
exécuter
J'ai eu le même problème. Dans mon cas, je le fixe à l'exécution
run-war
au lieu dedeploy
pour Tomcat7 avec configuration:Il a fallu un moment pour comprendre le plugin maven de déploiement avec Tomcat 7 mécanisme, mais il fonctionne de la manière suivante:
Pour une utilisation avec la commande:
mvn tomcat7: déployer
La sortie de marche, il devrait ressembler à ceci:
mvn tomcat7: run-guerre
La sortie de marche, il devrait ressembler à ceci:
Vous pouvez même exécuter la commande mvn clean package pour effectuer un nettoyage du projet.
Quelques configurations supplémentaires:
[%TOMCAT_HOME%\conf] tomcat-users.xml
[%MAVEN_HOME%\conf] settings.xml
[%projet%] pom.xml
Espère que cela aide!
J'ai eu le même problème et il est apparu à la version de Tomcat vs plugin Maven version.
J'ai utilisé tomcat 7 et essayé de déployer avec
tomcat:deploy-only
au lieu detomcat7:deploy
seulement.Si c'est votre cas, essayez
tomcat7:deploy-xxx
.Je pense que d'un point important, ici, est que vous devez utiliser tomcat7:déployer. Ne négligez pas la 7.
J'ai été en utilisant l'auto-complétion et toujours terminé avec tomcat:déployer et seulement aveuglément ignoré le petit 7.
J'ai eu le même problème:
- Je vérifier le log de tomcat( dir:
log/localhost_access.xxx
, puis j'ai constaté que lorsque maven télécharger le.wawr
fichier tomcat, le code de statut http de la réponse est403
, ce qui signifie que l'accès a été fobidden.Puis j'ai vérifié que le
manager
ethost
application a la même dir:META-INF
. dans ce dir, j'ai trouvé le fichiercontext.xml
, ce fichier d'en limiter l'accès demanager
ethost
app. le texte est ci-dessous:Modifier l'attribut
allow
de laisser votre adresse ip accèsmanager
ethost
application, alors le problème est résolu.Si le problème est à cause de Java Heap Space. Ensuite, vous pouvez le modifier à l'aide des étapes suivantes, s'il est installé comme un service:
1 - Exécuter cmd "Tomcat_DIR\tomcat6w.exe" //ES//Nom_service
2 - Il va ouvrir tomcat GUI. Dans le menu JAVA, donner memomry configuration de pool.
Que la quantité de mémoire réservée pour Tomcat. Il faut résoudre votre mémoire tas de problème.