2016-10-25 7 views
0

Я пытаюсь создать простой UnitTest для сервлета. Очевидно, есть некоторая проблема с maven (я думаю), которая повлияет на процесс сборки.java ee api отсутствует в проекте classpath test

Я сделал некоторые исследования и, по-видимому, это известные проблемы. По моему недооценке, что нужно сделать, это изменить местоположение зависимости javaee-web-api в pom.xml

К сожалению, это решение не работает для меня. Это очень неприятно, поскольку я трачу столько времени на настройку, а не на кодирование.

Любая идея, как решить эту проблему или, возможно, некоторые другие решения для тестирования?

Я использую maven и NetBeans.

Спасибо

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.12</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.hamcrest</groupId> 
     <artifactId>hamcrest-core</artifactId> 
     <version>1.3</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-web-api</artifactId> 
     <version>6.0</version> 
     <scope>provided</scope> 
    </dependency> 
</dependencies> 

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.2</version> 
      <configuration> 
       <source>1.6</source> 
       <target>1.6</target> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-war-plugin</artifactId> 
      <version>2.1.1</version> 
      <configuration> 
       <failOnMissingWebXml>false</failOnMissingWebXml> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
+0

предоставленные средства "уже на пути к классам", возможно, вы хотите использовать тест вместо этого? –

+0

Можете ли вы разместить сообщение об ошибке? Каков ваш проект Dynamic Web Module? – Fabio

+0

6.0 'javax/javaee- *' artefacts известны этой проблемой. Они подходят для компиляции, но они были лишены содержимого, необходимого для их использования во время выполнения. –

ответ

1

Добавление org.glassfish.extras зависимостей решить.

посмотреть quesion: Testing against Java EE 6 API

<modelVersion>4.0.0</modelVersion> 

<groupId>com.mycompany</groupId> 
<artifactId>mavenproject1</artifactId> 
<version>1.0-SNAPSHOT</version> 
<packaging>war</packaging> 

<name>mavenproject1</name> 

<dependencies> 
    <dependency> 
     <groupId>org.glassfish.extras</groupId> 
     <artifactId>glassfish-embedded-all</artifactId> 
     <version>3.0.1</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.12</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.hamcrest</groupId> 
     <artifactId>hamcrest-core</artifactId> 
     <version>1.3</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-web-api</artifactId> 
     <version>6.0</version> 
     <scope>provided</scope> 
    </dependency> 
</dependencies> 

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.2</version> 
      <configuration> 
       <source>1.6</source> 
       <target>1.6</target> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-war-plugin</artifactId> 
      <version>2.1.1</version> 
      <configuration> 
       <failOnMissingWebXml>false</failOnMissingWebXml> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
<repositories> 
    <repository> 
     <id>glassfish-extras-repository</id> 
     <url>http://download.java.net/maven/glassfish/org/glassfish/extras</url> 
    </repository> 
</repositories> 

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

  • Нет связанных вопросов^_^