Добавление зависимостей в JAR - PullRequest
0 голосов
/ 04 марта 2019

Ниже приведено POM для моего проекта maven, который генерирует JAR-файл "sngavara-upnetworkstatus.jar" и копирует его в папку bin во время сборки проекта.Обратите внимание, что у моего проекта есть зависимость - cellred.

Как я могу сделать свои классы доступа JAR из зависимости 'cellred'?Я пытаюсь добавить некоторый код в JAR, для которого мне нужно использовать классы из ячеистой зависимости.Это дает мне NoClassDefFoundError, когда я запускаю его.Тем не менее, нет ошибок времени компиляции в Eclipse.

Пожалуйста, помогите.

<build>
        <finalName>${artifactId}</finalName>
        <plugins>

        <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <executions>
                    <execution>
                        <id>upnetworkstatus</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <configuration>
                            <archive>
                                <manifest>
                                    <mainClass>
                                        com.ezmediation.driver.sngavara.upnetworkstatus.App
                                    </mainClass>
                                </manifest>
                            </archive>
                            <classifier>upnetworkstatus</classifier>
                            <includes>
                            </includes>

                        </configuration>
                    </execution>

                </executions>
            </plugin>           
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <tasks>
                                <copy file="target/avarasnga-upnetworkstatus.jar" tofile="bin/sngavara-upnetworkstatus.jar" />
                            </tasks>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

  <dependencies>             
    <dependency>
      <groupId>com.ezmediation</groupId>        
      <artifactId>cellred</artifactId>        
      <version>${project.version}</version>
      <scope>provided</scope>     
   </dependency>
  </dependencies>
...