Maven Jetty: внутренняя ошибка в менеджере плагинов при выполнении цели 'org.mortbay.jetty: maven-jetty-plugin: 6.1.22: run' - PullRequest
2 голосов
/ 01 декабря 2009

Я уже некоторое время могу запускать некоторые веб-сервисы через подключаемый модуль Maven для тестирования. Мне удалось запустить около 7 таких сервисов, и все работало нормально. Недавно, без каких-либо изменений конфигурации, я начал получать следующие ошибки:

$ mvn jetty:run -Puat
[INFO] Scanning for projects...
Downloading: http://www.ibiblio.org/maven/org.mortbay.jetty/poms/maven-jetty-plugin-6.1.22.pom
[INFO] ------------------------------------------------------------------------
[INFO] Building delta1-cashdata-ws
[INFO]    task-segment: [jetty:run]
[INFO] ------------------------------------------------------------------------
[INFO] Preparing jetty:run
[INFO] [resources:resources {execution: default-resources}]
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 3 resources
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Nothing to compile - all classes are up to date
[INFO] [resources:testResources {execution: default-testResources}]
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] [compiler:testCompile {execution: default-testCompile}]
[INFO] No sources to compile
-----------------------------------------------------
this realm = app0.child-container[org.mortbay.jetty:maven-jetty-plugin:6.1.22]
urls[0] = file:/c:/Documents and Settings/lemojon/.m2/repository/org/mortbay/jetty/maven-jetty-plugin/6.1.22/maven-jetty-plugin-6.1.22.jar
urls[1] = file:/c:/Documents and Settings/lemojon/.m2/repository/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar
Number of imports: 10
import: org.codehaus.classworlds.Entry@a6c57a42
import: org.codehaus.classworlds.Entry@12f43f3b
import: org.codehaus.classworlds.Entry@20025374
import: org.codehaus.classworlds.Entry@f8e44ca4
import: org.codehaus.classworlds.Entry@92758522
import: org.codehaus.classworlds.Entry@ebf2705b
import: org.codehaus.classworlds.Entry@bb25e54
import: org.codehaus.classworlds.Entry@bece5185
import: org.codehaus.classworlds.Entry@3fee8e37
import: org.codehaus.classworlds.Entry@3fee19d8


this realm = plexus.core
urls[0] = file:/c:/apache-maven-2.2.1/lib/maven-2.2.1-uber.jar
Number of imports: 10
import: org.codehaus.classworlds.Entry@a6c57a42
import: org.codehaus.classworlds.Entry@12f43f3b
import: org.codehaus.classworlds.Entry@20025374
import: org.codehaus.classworlds.Entry@f8e44ca4
import: org.codehaus.classworlds.Entry@92758522
import: org.codehaus.classworlds.Entry@ebf2705b
import: org.codehaus.classworlds.Entry@bb25e54
import: org.codehaus.classworlds.Entry@bece5185
import: org.codehaus.classworlds.Entry@3fee8e37
import: org.codehaus.classworlds.Entry@3fee19d8
-----------------------------------------------------
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Internal error in the plugin manager executing goal 'org.mortbay.jetty:maven-jetty-plugin:6.1.22:run': Unable to load the mojo 'org.mortbay.jetty:maven-jetty-plugin:6.1.22:run' in the plugin 'org.mortbay.jetty:maven-jetty-plugin'. A required class is missing: org/mortbay/jetty/webapp/WebAppContext
org.mortbay.jetty.webapp.WebAppContext
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Mon Nov 30 16:32:00 EST 2009
[INFO] Final Memory: 11M/22M
[INFO] ------------------------------------------------------------------------

Вот конфигурация из POM:

<build>
    <plugins>
        <plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>maven-jetty-plugin</artifactId>
            <configuration>
                <connectors>
                    <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
                        <port>8083</port>
                    </connector>
                </connectors>
            </configuration>
        </plugin>
    </plugins>
</build>

Эта конфигурация не изменилась, так как я смог запустить ее успешно. Я пытался обновить версию Maven (с 2.0.9 до 2.2.1), но это ничего не решало. Я также пытался удалить каталог .m2 / repository / org / mortbay / jetty и перезагружать его в цикле сборки, но это также ничего не решило.

1 Ответ

4 голосов
/ 01 декабря 2009

Недавно, без каких-либо изменений конфигурации, я начал получать следующие ошибки [...]

Может быть, вы ничего не изменили ... Но, возможно, вы начали использовать новую версию плагина maven-jetty-plugin. Попробуйте вернуться к предыдущей версии:

<build>
  <plugins>
    <plugin>
      <groupId>org.mortbay.jetty</groupId>
      <artifactId>maven-jetty-plugin</artifactId>
      <version>6.1.21</version>
      <configuration>
        <connectors>
          <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
            <port>8083</port>
          </connector>
        </connectors>
      </configuration>
    </plugin>
  </plugins>
</build>

На самом деле нужно ВСЕГДА заблокировать версию плагина для воспроизводимости сборки (даже если я не уверен, что это решит проблему здесь). Новые вещи могут сломать вашу сборку, вы не хотите получать их без контроля.

...