2016-05-17 4 views
1

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

Я знаю, что есть плагин Maven-зависимость с распакованных зависимостях цель в это

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-dependency-plugin</artifactId> 
    <version>2.10</version> 
    <executions> 
     <execution> 
      <id>resolve-dependecies</id> 
      <phase>process-sources</phase> 
      <goals> 
       <goal>sources</goal> 
      </goals> 
      <configuration> 
       <classifier>sources</classifier> 
       <includeParents>true</includeParents> 
       <type>java-source</type> 
      </configuration> 
     </execution> 
     <execution> 
      <id>src-dependencies</id> 
      <phase>process-sources</phase> 
      <goals> 
       <goal>unpack-dependencies</goal> 
      </goals> 
      <configuration> 
       <classifier>sources</classifier> 
       <failOnMissingClassifierArtifact>false</failOnMissingClassifierArtifact> 
       <outputDirectory>${project.basedir}/Utils/src</outputDirectory> 
       <type>java-source</type> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

Но когда я использую это много файлов «не были решены».

например.

... 
org.jboss:jboss-parent:java-source:sources:5 
org.apache.cxf:cxf-parent:java-source:sources:3.0.3 
org.apache:apache:java-source:sources:13 
org.apache:apache:java-source:sources:9 
org.liquibase:liquibase-parent:java-source:sources:3.5.0 
org.apache.commons:commons-parent:java-source:sources:5 
org.eclipse.jetty.orbit:jetty-orbit:java-source:sources:1 
... 

В pom.xml я не указать любое хранилище для зависимостей, так что по умолчанию Maven центрального хранилища используется.

Я также попытался декомпилировать (Fernflower, Процион, JAD проектов) мой баночка файл проекта, который содержит все зависимости. Но после декомпиляции сотни ошибок появились в результате java-файлов.

Я все еще надеюсь решить эту проблему, используя инструменты maven.

Заранее благодарим за любую помощь.

EDIT

Нерешенные артефакты прямо не указанные в pom.xml

+0

У вас есть настройки maven settings.xml? – Vijay

+0

@ Vijay no, я не – Alexander

+0

- это maven, загружающий другие зависимости, указанные в разделе ? задаваясь вопросом, связана ли проблема с подключением к центральному хранилищу. – Vijay

ответ

0

Я вижу несколько зависимостей с *-parent. Учитывая имя, я думаю, это просто родительские поры, которые, вероятно, не содержат никаких java-источников. Для остальных, вы уверены, что есть артефакты с источниками java?

ОБНОВЛЕНИЕ: Я проверил список, который вы указали в своем вопросе, есть ли источники и не было. Я отметил, что все они имеют упаковку POM. Вы можете пропустить их, включив в свою конфигурацию <includeClassifiers>sources</includeClassifier>

+0

Спасибо за ответ. Нет, я не уверен, я не могу найти эти артефакты. Кроме того, насколько мне известно, в извлеченном Java-коде есть ссылка на артефакты, которые не указаны в списке неразрешенных зависимостей: \ , например. import org.osgi.framework.wiring.BundleWiring; – Alexander

+0

Какова область этих неразрешенных зависимостей. Возможно, они настроены на предоставление. – uniknow

+0

Что произойдет, если вы удалите '' атрибут плагина зависимостей. – uniknow

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