Невозможно выполнить развертывание в Tomcat 7 (на компьютере с Windows 7) с другого компьютера (Windows 7) с помощью tomcat-maven-plugin - PullRequest
2 голосов
/ 21 апреля 2011

Я пытаюсь создать и развернуть пример учебного проекта Struts2 на Tomcat 7, запущенном на другом компьютере в сети. Проект строится нормально и развертывается нормально на локальном компьютере, но выдает ошибку (указано ниже) при развертывании на удаленном компьютере.

Настройки в файле pom.xml:

<plugin>
             <groupId>org.codehaus.mojo</groupId>
             <artifactId>tomcat-maven-plugin</artifactId>
             <version>1.1</version>
             <configuration>
                 <url>http://10.0.0.220:8080/manager</url>
                  <server>myserver</server>
             </configuration>
        </plugin>

где, 10.0.0.220:8080 - это адрес компьютера, на котором я пытаюсь развернуть файл WAR.

Код в моем файле settings.xml Maven на моей локальной машине:

<server>
        <id>myserver</id>
        <username>travel</username>
        <password>travel</password>
</server>

код в файле Tomcat 7.0 / conf / tomcat-users.xml на компьютере, на котором я пытаюсь развернуть:

<user name = "travel" password = "travel" roles = "manager-gui,admin-gui" />

Более того, я могу получить доступ к http://10.0.0.220:8080/manager из моего веб-браузера с локального компьютера и вручную развернуть файл WAR.

Однако, когда я использую mvn tomcat:deploy на локальном компьютере, он говорит BUILD FAILURE

[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:deploy
(default-cli) on project tutorial: Cannot invoke Tomcat manager: Server returned
 HTTP response code: 403 for URL: http://10.0.0.220:8080/manager/deploy?path=%2F
tutorial&war= -> [Help 1]

и когда я использую mvn tomcat:run, я получаю следующее:

    INFO: ... initialized Struts-Spring integration successfully
Apr 21, 2011 3:39:22 PM org.apache.coyote.http11.Http11Protocol init
SEVERE: Error initializing endpoint
java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind
        at java.net.PlainSocketImpl.socketBind(Native Method)
        at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
        at java.net.ServerSocket.bind(ServerSocket.java:319)
        at java.net.ServerSocket.<init>(ServerSocket.java:185)
        at java.net.ServerSocket.<init>(ServerSocket.java:141)
        at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(De
faultServerSocketFactory.java:50)
        at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:538)
        at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:176)

        at org.apache.catalina.connector.Connector.initialize(Connector.java:101
4)
        at org.apache.catalina.startup.Embedded.start(Embedded.java:830)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.startContainer(AbstractRunMo
jo.java:558)
        at org.codehaus.mojo.tomcat.AbstractRunMojo.execute(AbstractRunMojo.java
:255)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(Default
BuildPluginManager.java:101)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor
.java:209)
        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.buildProje
ct(LifecycleModuleBuilder.java:84)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProje
ct(LifecycleModuleBuilder.java:59)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBu
ild(LifecycleStarter.java:183)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(Lifecycl
eStarter.java:161)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
        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(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Laun
cher.java:290)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.jav
a:230)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(La
uncher.java:409)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:
352)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.330s
[INFO] Finished at: Thu Apr 21 15:39:23 IST 2011
[INFO] Final Memory: 5M/10M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:run (de
fault-cli) on project tutorial: Could not start Tomcat: Protocol handler initial
ization failed: java.net.SocketException: Unrecognized Windows Sockets error: 0:
 JVM_Bind -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.

Что может быть причиной этой проблемы? Я отключил брандмауэр Windows и настройки UAC на «Никогда не уведомлять».

Кроме того, если я использую mvn tomcat:deploy на своем локальном компьютере (на котором запущен tomcat 5), он развертывается нормально.

1 Ответ

8 голосов
/ 29 апреля 2011

Я столкнулся с той же проблемой. В Tomcat 7 URL-адрес развертывания по умолчанию изменился с http://localhost:8080/manager на http://localhost:8080/manager/html.

...