Maven zewnętrzne zależności

Maven zewnętrzne zależności
SW
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 426
0

Projekt budowany mavenem - brak zależności w repozytorium mavenowym (axis to tylko przyklad). Chcę wskazać odpowiednie jary ktore musi dolaczyc do classpath.
Czy jest ktoś w stanie powiedzieć mi jak poniższy kod zamienić na wywołanie z antrun mavenowego?

Kopiuj
	<path id="axis.classpath">
		<fileset dir="${axis2.directory.lib}">
			<include name="**/*.jar" />
		</fileset>
	</path>
	<path id="resources.classpath">
		<pathelement location="lib" />
	</path>
	<path id="project.classpath">
		<path refid="resources.classpath"/>
		<path refid="axis.classpath"/>
		<fileset dir="lib">
			<include name="**/*.jar" />
		</fileset>
	</path>
SZ
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 616
0

do takich rzeczy jest odpowiedni scope w maven chyba system

SW
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 426
0

problem w tym, ze z tego co zobaczylem trzeba specyfikowac kazdy jar z osobna a jest ich dość sporo. Myslalem, ze mozna jakos dodac "folderem"

SZ
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 616
0

Zawsze możesz skorzystać z maven-antrunera

SW
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 426
0

Na razie zrobiłem to na zasadzie "in project repository". Także trzeba dodawać każdy jar z osobna no ale dość fajnie działa jak na razie.

Na początku trzeba stworzyć folder libs wraz z z jarami. Hierarchia folderów powinna być następująca:

Kopiuj
/groupId/artifactId/version/artifactId-verion.jar

Czyli np:

Kopiuj
-libs
   -dropbox
      -dropbox-sdk
        -1.3.1
           -dropbox-sdk-1.3.1.jar

Deklaracja repozytorium w pom.xml

Kopiuj
<repository>
   <id>in-project</id>
   <name>In Project Repo</name>
   <a href="file://${project.basedir}/libs">file://${project.basedir}/libs</a>
</repository>

Korzystanie w pom.xml z zaleznosci bez roznic

Kopiuj
<dependency>
    <groupId>dropbox</groupId>
    <artifactId>dropbox-sdk</artifactId>
    <version>1.3.1</version>
</dependency>

http://charlie.cu.cc/2012/06/how-add-external-libraries-maven/

Koziołek
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Stacktrace
  • Postów: 6823
0

Ale po co tak skoro to samo można osiągnąć poprzez instalację tych plików w lokalnym repo?

Kopiuj
mvn install:install-file -Dfile=plik.jar -DgroupId=com.example -DartifactId=example -Dversion=versja -Dpackaging=jar

Można jeszcze się zabawić w parsowanie nazwy pliku jar w celu przygotowania odpowiednich zmiennych.

SW
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 426
0

Bo w projekcie jest parę osób i każdy musiałby wykonywać ten skrypcik. Tak wydało mi się, że spowoduje mniej problemów w konfigu.

Koziołek
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Stacktrace
  • Postów: 6823
1

No to postawcie Nexusa i tam zainstalujcie te paczki. W pomie dodasz tylko repo nexusa i po problemie.

SW
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 426
0

Dzięki za propozycję na razie zostaniemy przy tym póki nie robi to żadnych problemów :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.