NoClassDefFoundError: org / apache / commons / io / output / DeferredFileOutputStream при загрузке файла с помощью SpringMVC / Wildfly / CentOS

1

Хотя я успешно загружаю файлы в свое веб-приложение в стеке SpringMVC/Widlfly/Ubuntu, я встречаю исключение NoClassDefFoundError в SpringMVC/Widlfly/CentOs. Оба стека имеют одинаковый Wildfly, тот же JDK и одинаковые конфигурации.

Окружающая среда:

  • SpringMVC
  • Wildfly 8.1/Wildfly 8.2
  • JDK 1.7.0_51-b13
  • Файлы JAR:
    • мой-ear.ear/мой-web.war/WEB-INF/Lib/Обще-ю-2.4.jar
    • мой-ear.ear/мой-web.war/WEB-INF/Lib/Обще-FileUpload-1.3.1.jar
    • wildfly-8.1.0.Final/modules/system/layers/base/org/apache/commons/io/main/commons-io-2.4.jar

Я знаю, что это исключение связано с конфликтом в классе-загрузчике.

  • 0
    Убедитесь, что этот класс существует в jar-файле org/apache/commons/io/output/DeferredFileOutputStream и сообщите нам об этом.
  • 0
    Вы проверили правильную зависимость структуры развертывания jboss?
Показать ещё 4 комментария
Теги:
spring-mvc
file-upload
wildfly

2 ответа

0
Лучший ответ

Я, наконец, решил свою проблему. Я перевел файлы "commons-io-2.4.jar" и "commons-fileupload-1.3.1.jar" из " my-ear.ear/my-web.war/WEB-INF/lib/ " на " мое ухо".ear/lib '.

0

В моем случае проблема заключалась в том, что я объявлял зависимости в a war maven project, поэтому maven копировал jar libs в WEBINF/lib.

Я решил эту проблему, поставив декларацию зависимостей на другой военный проект jar project pom, а не на военный проект, как я делал:

myapp-project-web-api/: <- (проект war maven)

pom.xml:

...
    <dependencies>

      <!-- File upload -->
        <!-- deleted commons-fileupload dependency>

        <!-- deleted commons-io dependency -->
...

MyApp-проект-веб-API-компонента/:

pom.xml:

...
    <dependencies>

    <!-- File upload -->
      <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
      </dependency>

      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
      </dependency>
...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню