Mam (na pozór) prosty problem z maven, którego nie mogę rozwiązać. W moim POM mam określony zależnością do openrdf-sezam takiego:Kompilacja Mavena: pakiet nie istnieje
<dependency>
<groupId>org.openrdf.sesame</groupId>
<artifactId>sesame-runtime</artifactId>
<version>2.7.2</version>
</dependency>
Uruchomienie projektu z Eclipse działa dobrze, mogę nawet eksportować runnable plik jar. Niestety, nie mogę sprawić, żeby działał poprawnie za pośrednictwem programu cmd-line maven. Aby zbudować słoik, dodałem następujące do mojego pom:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>foo.bar.Cli</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
Kompilacja nie powiedzie się z następujących błędów:
.../PLDReducer.java:[25,29] package org.openrdf.rio.rdfxml does not exist
.../PLDReducer.java:[27,33] package org.openrdf.sail.nativerdf does not exist
.../LowPLDReducer.java:[25,29] package org.openrdf.rio.rdfxml does not exist
.../Cli.java:[23,33] package org.openrdf.sail.nativerdf does not exist
.../SchemaBuilder.java:[30,33] package org.openrdf.sail.nativerdf does not exist
.../RepoQuerier.java:[23,33] package org.openrdf.sail.nativerdf does not exist
.../PLDReducer.java:[78,44] cannot find symbol
dziwne, jak tylko dodać plugin kompilacji do pom i zaktualizuj ustawienia projektu, Eclipse nie może już więcej się kompilować. Sprawdziłem moje repozytorium i tam są wszystkie pliki sezamowe.
mvn version daje to wyjście:
Apache Maven 2.2.1 (rdebian-8)
Java version: 1.6.0_27
Java home: /usr/lib/jvm/java-6-openjdk-amd64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux" version: "3.8.0-25-generic" arch: "amd64" Family: "unix"
widzę, że wydaje się wskazywać na JRE, ale mój googling wykazało, że chciałbym zobaczyć inny błąd, jeśli sam kompilator nie został znaleziony. Mam pasted the complete POM here, jeśli jest potrzebna.
Czy jest coś, czego mi brakuje? Nie mogę znaleźć żadnych błędów w POM.
Czy możesz pokazać pełną wydajność "pakietu czystego mvn"? – khmarbaise
[Tutaj jest przełącznik -e] (http://pastebin.com/zg24L8rS) i [tutaj z przełącznikiem -X] (http://pastebin.com/A5G613LL) – feob
Wygląda na to, że używasz nazw pakietów (presumbly w twojej imporcie), które nie istnieją. Czy naprawdę potrzebujesz pakietów Thoose? Korzystasz z klas z niego? Czyszczenie części importowej za pomocą IDE (jak Eclipse?)? Czy możesz pokazać jeden z plików kodu źródłowego, takich jak 'PLDReducer.java'? – khmarbaise