2016-09-09 2 views

ответ

0

я смог найти только зависимость, связанные с вашим именем группы в mvnrepo, поэтому, возможно, вы можете упустить этот DEP

<dependency> 
    <groupId>com.jcraft</groupId> 
    <artifactId>jzlib</artifactId> 
    <version>1.1.3</version> 
</dependency> 
+0

я найти теперь этот dependency.but я не coud найти пакет экспорта в п .xml , так что вы можете найти для этого? – shanmu

+1

@shanmu Я использовал Maven уже много лет, но я понятия не имею, что вы подразумеваете под «экспортным пакетом». – Gimby

+0

без проблем @GImby. Я получил решение для этого. – shanmu

0

Что у вас есть нормальный JAR, а не пучок, что вы могли бы сделать, это обертка этот банку в пользовательский комплект с соответствующей экспортной выпиской. Поместите этот пакет в свой собственный репозиторий (nexus, jfrog и т. Д.).

Вы можете посмотреть другое сообщение Convert existing JAR to OSGi-bundle для получения подробной информации о создании пользовательского комплекта.

В случае, если у вас есть несколько таких зависимостей сторонних разработчиков, затем создайте отдельный модуль maf maven для переноса всех зависимостей сторонних разработчиков. Тогда вы могли бы использовать связку генерируемой из этого проекта, так как зависимости модулях, которые нуждаются в 3-е пакетов сторонних -

Примера П -

<?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/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <artifactId>com.myproject.dependencies</artifactId> 
    <packaging>bundle</packaging> 
    <name>Third Party Dependencies</name> 
    <description> 
     This project manages dependencies needed by Project bundles. 
    </description> 

    <parent> 
     <groupId>com.myproject.parent</groupId> 
     <artifactId><!--PARENT ARTIFACT ID --></artifactId> 
     <version><!--PARENT VERSION --></version> 
    </parent> 
    <properties> 
     <!-- Any properties needed --> 

    </properties> 
    <dependencies> 

     <!-- 3rd party dependencies | List all 3rd parties as dependencies--> 

     <!-- https://mvnrepository.com/artifact/com.jcraft/jzlib --> 
     <dependency> 
      <groupId>com.jcraft</groupId> 
      <artifactId>jzlib</artifactId> 
      <version>1.1.3</version> 
     </dependency> 
    </dependencies> 

    <!-- for packaging as an OSGi bundle, we use the maven-bundle-plugin --> 
    <!-- see http://felix.apache.org/site/maven-bundle-plugin-bnd.html for more info --> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.felix</groupId> 
       <artifactId>maven-bundle-plugin</artifactId> 
       <configuration> 
        <instructions> 
         <Export-Package> 
          com.myproject.dependencies.*, 
          com.jcraft.* 
         </Export-Package> 

         <Private-Package> 
          <!-- Specify any private package here--> 
         </Private-Package> 

         <Import-Package> 
          * 
         </Import-Package> 

         <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName> 

         <Bundle-Activator>${project.artifactId}.Activator</Bundle-Activator> 

         <Include-Resource> 
          {maven-resources} 
         </Include-Resource> 

         <Embed-Dependency> 
          jzlib 
          <!-- comma separated list of dependency artifact ids --> 
         </Embed-Dependency> 

         <Embed-Transitive>true</Embed-Transitive> 
        </instructions> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.felix</groupId> 
       <artifactId>maven-scr-plugin</artifactId> 
       <executions> 
        <execution> 
         <id>generate-scr-scrdescriptor</id> 
         <goals> 
          <goal>scr</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
      <!-- generate manifest automatically once the classes are processed --> 
     </plugins> 
    </build> 
</project> 
Смежные вопросы