Chcę podzielić moje zadanie ciągłej integracji (Hudson) na dwa etapy. (Ponieważ środowisko wykonawcze z kompilacją i raportowaniem razem trwa zbyt długo.) W pierwszym zadaniu zbudowałem mój projekt z jednym modułem z powodzeniem "pakiet mvn". Następnie kopiuję swój obszar roboczy do innej lokalizacji i próbuję ponownie zbudować projekt tylko z celem "site" i/lub findbugs/checkstyle/pmd w celu utworzenia raportów. Ale to nie działa! Maven nie może rozwiązać zależności z moich submodułów. (ale wszystkie słoje są dostępne w swoich folderach docelowych.)Witryna Maven w projekcie z wieloma modułami nie może rozwiązać zależności.
Przykład: Moja struktura wygląda następująco:
- nadrzędna
- B
- C
- D
Projekt C ma jako zależność projektu B.
Kiedy budować wszystko z mvn „miejscu”, generuje dla projektu A i B Wszystkie raporty. Ale zatrzymany w projekcie C z komunikatem o błędzie "Nie można rozwiązać zależności dla projektu B." Ale projekt B jest już zbudowany z "pakietem mvn". To znaczy. Mogę znaleźć plik JAR projektu B w folderze docelowym.
Czy istnieje sposób na rozwiązanie zależności od modułu podrzędnego B bez "instalacji mvn"? (nie chcę robić tego na moim serwerze CI obawiam może to być niebezpieczne dla innych prac z tej samej bazie kodu.).
Aktualizacja 20.08.12:
POM korzenia Folder:
<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>
<name>Foo</name>
<groupId>foo</groupId>
<artifactId>bar</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<modules>
<module>parent</module>
</modules>
</project>
POM nadrzędny:
<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>
<name>Foo</name>
<groupId>foo</groupId>
<artifactId>parent</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<modules>
<module>../bar-a</module>
<module>../bar-b</module>
<module>../bar-c</module>
<module>../bar-d</module>
</modules>
[...]
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.5.1</version>
[...]
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>2.7.1</version>
[...]
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.9.1</version>
[...]
</plugin>
</plugins>
</reporting>
</project>
POM B :
<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>
<parent>
<groupId>foo</groupId>
<artifactId>parent</artifactId>
<version>1.0</version>
<relativePath>../parent</relativePath>
</parent>
<name>Bar B</name>
<artifactId>bar-b</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
[...]
</project>
POM C:
<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>
<parent>
<groupId>foo</groupId>
<artifactId>parent</artifactId>
<version>1.0</version>
<relativePath>../parent</relativePath>
</parent>
<name>Bar C</name>
<artifactId>bar-c</artifactId>
<packaging>jar</packaging>
[...]
<dependencies>
<dependency>
<groupId>foo</groupId>
<artifactId>bar-b</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
[...]
</project>
Bez pom's trudno zgadnąć ... ale wygląda na to, że zależność/moduł nie jest poprawnie skonfigurowany. witryna mvn clean powinna działać bez błędów. – khmarbaise
Czy pakiet mvn clean działa również bez błędów? – khmarbaise
Tak. "pakiet mvn clean" działa bez błędów. "witryna mvn clean" nie. Przesyłam fragment kodu później. – user1606528