Maven - вытащить код из SVN - PullRequest
       3

Maven - вытащить код из SVN

4 голосов
/ 25 октября 2011

Я перевожу J2ee Project из Ant в Maven,
Одна из задач Ant - извлечь существующий исходный код из репозитория SVN
Скомпилируйте его и добавьте его в мою текущую сборку как Jar

Можно ли получить исходный код и скомпилировать его в Maven?

Спасибо!

<target name="checkoutBuild" description="Pulls code from SVN into the build directory">
    <exec executable="svn">
        <arg line="co ${svn.projecturl} ${project.build.root} -r ${svn.revision} --username ${svn.username} --password ${svn.password}"/>
    </exec>
</target>

Ответы [ 2 ]

2 голосов
/ 25 октября 2011

Да, так же, как в Ant.Выполните команду svn в exec-maven-plugin на одном из этапов предварительной компиляции, возможно, в generate-sources .Я бы попробовал что-то вроде этого (это мозговая свалка, может содержать незначительные ошибки):

<build>
 <plugins>
  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>...</version>
    <executions>
      <execution>
        <id>svn</id>
        <goals>
          <goal>exec</goal>
        </goals>
        <phase>generate-sources</phase>
      </execution>
    </executions>
    <configuration>
      <executable>svn</executable>
      <arguments>
        <argument>co</argument>
        <argument>${svn.projecturl}</argument>
        <argument>${project.build.root}</argument>
        ...
      </arguments>
    <configuration>
  </plugin>
 </plugins>
</build>

РЕДАКТИРОВАТЬ

Ответ Prunge заставил меня задуматься - что делатьВы хотите действительно достичь?Если проект всегда должен быть частью сборки, гораздо лучшим способом будет «mavenize» его (напишите POM для него) и включите его в качестве модуля / зависимости.

Если проверка SVNдолжно быть одноразовое действие, может быть, лучше оставить все как есть, добавить jar в репозиторий с помощью mvn install:install-file (присвоение идентификатора группы и идентификатора артефакта) и использовать его в качестве зависимости?

1 голос
/ 25 октября 2011

Вы, вероятно, можете, но это не «Maven Way» ведения дел.

Ознакомьтесь с документацией Maven Release Plugin .

Что вы обычно делаете:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...