2016-07-16 3 views
1

В моем проекте плагина eclipse. У меня есть конкретная банка, которая мне нужна, чтобы она была видимой в процессе сборки специально на этапе тестирования. Однако мне не нужно, чтобы она отображалась во время выполнения плагина eclipse. Я нахожу, что tycho-surefire-plugin использует банки, существующие в Bundle-ClassPath MANIFEST.MF вместо bin.includes build.properties. Есть ли способ заставить tycho-surefire-plugin получить свой путь класса от build.properties вместо MANIFEST.MF? как я вижу, это нормальная разница между этими двумя файлами.Почему tycho-surefire-plugin: test рассматривает Bundle-ClassPath вместо bin.includes?

Моего фрагмент тестового проект П является следующее:

<?xml version="1.0" encoding="UTF-8"?> 
<project> 
    <modelVersion>4.0.0</modelVersion> 

    <parent> 
     <groupId>com.myproject</groupId> 
     <artifactId>projectparent</artifactId> 
     <version>1.0.0-SNAPSHOT</version> 
     <relativePath>../../../../projectparent/pom.xml</relativePath> 
    </parent> 

    <artifactId>com.myproject.projecttest</artifactId> 
    <packaging>eclipse-test-plugin</packaging> 
    <name>${project.artifactId}</name> 
    <description> 
     Tests for my project 
    </description> 

    <properties> 
     <maven.site.skip>true</maven.site.skip> 
     <maven.site.deploy.skip>true</maven.site.deploy.skip> 
    </properties> 
</project> 
+0

как вы настроили тестовую «целевую платформу» !! ?? любой pom? –

+0

@ Хишамх, тестовый фрагмент имеет очень простой файл pom. Я не настроил «целевую платформу» в pom. – Moemen

+0

Можете ли вы опубликовать тестовый pom в своем вопросе? –

ответ

0

Если я правильно понял ваш вопрос:

  • у вас есть какая-то зависимость, что вы должны использовать их только во время фазы тестирования но не включая их в ваш продукт.

Для этого вы должны использовать плагин конфигурации целевой платформы для тестирования, а затем указать extraRequirements, чтобы включить ваши тестовые только зависимости.

Примера целевой платформа конфигурация:

<plugin> 
      <groupId>org.eclipse.tycho</groupId> 
      <artifactId>target-platform-configuration</artifactId> 
      <version>${tycho.version}</version> 
      <configuration> 
       <environments> 
        <environment> 
         <os>win32</os> 
         <ws>win32</ws> 
         <arch>x86</arch> 
        </environment> 
        <environment> 
         <os>linux</os> 
         <ws>gtk</ws> 
         <arch>x86</arch> 
        </environment> 
        <environment> 
         <os>linux</os> 
         <ws>gtk</ws> 
         <arch>x86_64</arch> 
        </environment> 
       </environments> 
       <dependency-resolution> 
        <optionalDependencies>ignore</optionalDependencies> 
        <extraRequirements> 
         <requirement> 
          <type>eclipse-plugin</type> 
          <id>org.eclipse.ui</id> 
          <versionRange>0.0.0</versionRange> 
         </requirement> 
         <requirement> 
          <type>eclipse-plugin</type> 
          <id>org.eclipse.ui.views</id> 
          <versionRange>0.0.0</versionRange> 
         </requirement> 
         <requirement> 
          ..... 
         </requirement> 
        </extraRequirements> 
       </dependency-resolution> 
      </configuration> 
     </plugin> 

включить это в тестовом П.

надеюсь, что это поможет.

+0

Спасибо за ваш ответ. Но в моем случае дополнительное требование не является плагином затмения, это нормальная банка. в частности, это javafx jar "jfxrt.jar". Так есть ли способ рассмотреть это как дополнительные требования? – Moemen