2015-09-29 3 views
0

Я борюсь с конфигурацией eclipse + tomcat. Я развернул свое приложение в облаке, но я мог бы сделать некоторые изменения в автономном режиме (это быстрее), а затем развернуть что-то работающее. У меня есть веб-проект, настроенный с использованием maven. У меня есть 2 зависимостей (не говоря уже о существенных javax): org.json и joda-time. Проблема в том, что я не могу понять, как загрузить эти зависимости. Каждый раз, когда я хочу запустить проект tomcat, не удается начать с длинной трассировки стека, но я знаю, что проблема в том, что строка: Caused by: Java.lang.NoClassDefFoundError: javax/json/JsonObject. Это означает, что банок зависимостей нет (int WEB-INF/lib я думаю). Я пробовал ppm проекта project-> maven-> update, ppm на сервере-> clean, ppm на сервере-> публикация. Также я проверил project-> properties-> Deployment Asembly и Maven Dependencies ... Я много искал в Интернете, и у меня заканчиваются идеи. Спасибо за любую помощь, ура!java maven eclipse tomcat не удалось запустить NoClassDefFoundError

UPDATE pom.xml

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>openshifttest</groupId> 
    <artifactId>openshifttest</artifactId> 
    <packaging>war</packaging> 
    <version>1.0</version> 
    <name>openshifttest</name> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <maven.compiler.source>1.8</maven.compiler.source> 
     <maven.compiler.target>1.8</maven.compiler.target> 
    </properties> 

    <dependencies> 

     <dependency> 
      <groupId>javax</groupId> 
      <artifactId>javaee-api</artifactId> 
      <version>7.0</version> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.json</groupId> 
      <artifactId>json</artifactId> 
      <version>20090211</version> 
     </dependency> 

     <dependency> 
      <groupId>joda-time</groupId> 
      <artifactId>joda-time</artifactId> 
      <version>2.8.2</version> 
     </dependency> 

    </dependencies> 

<profiles> 
    <profile> 
    <!-- When built in OpenShift the 'openshift' profile will be used when invoking mvn. --> 
    <!-- Use this profile for any OpenShift specific customization your app will need. --> 
    <!-- By default that is to put the resulting archive into the 'deployments' folder. --> 
    <!-- http://maven.apache.org/guides/mini/guide-building-for-different-environments.html --> 
    <id>openshift</id> 
    <build> 
     <finalName>openshifttest</finalName> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <version>2.3</version> 
       <configuration> 
        <failOnMissingWebXml>false</failOnMissingWebXml> 
        <outputDirectory>deployments</outputDirectory> 
         <warName>ROOT</warName> 
       </configuration> 
      </plugin> 
     </plugins> 
     </build> 
    </profile> 
    </profiles> 
</project> 
+0

Пожалуйста, разместите свой pom.xml, чтобы перейти на следующий уровень. –

+0

Вопрос обновлен – kcdsh

+0

В дескрипторе развертывания, каковы ваши 'Maven Dependencies' для' Deploy Path 'mapping? –

ответ

1

Я думаю, что кот не может быть обеспечение Java EE API, пожалуйста, попробуйте изменить

<dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-api</artifactId> 
     <version>7.0</version> 
     <scope>provided</scope> 
    </dependency> 

в

<dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-api</artifactId> 
     <version>7.0</version> 
    </dependency> 

(удалить при условии охвата).

+0

все, спасибо! :) Он работает сейчас! – kcdsh

Смежные вопросы