Maven Fehler

Fohnbit

Top Contributor
Hallo!

Ich habe versucht nach dieser Anleitung Maven zu meiner OSGi Umgebung hinzu zufügen.

Bei GSON hatte ich die passende dependeny Beschreibung. Das hat geklappt.

Bei okHTTP habe ich versucht die Daten manuell einzugeben. Dann hat er mir immer dieser Fehler gebracht (oder so ähnlich):
Fehler trailing Char at index 64:
C:\Users\XY\.m2\repository\com\squareup\okhttp\okhttp \2.5.0\okhttp -2.5.0.jar.lastUpdated

Auch wenn ich das .m2 Verzeichnis lösche und m2e PDE Integration wieder lösche und neu installiere kommt der selbe Fehler.

Scheinbar stehen die falschen Daten noch irgendwo in Eclipse.
 
Sorry, nun doch noch die passende Idee gehabt.
Habe deinstalliert, eine neue Target Platform angelegt und wieder installiert.

Danach konnte ich bei der nicht aktiven die Einträge löschen
 
Wenn du Maven benutzt in etwa so


Java:
<!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp -->
<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>okhttp</artifactId>
    <version>4.12.0</version>
</dependency>

<!-- https://mvnrepository.<!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp --><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>4.12.0</version></dependency>com/artifact/com.squareup.okhttp3/okhttp --> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>4.12.0</version> </dependency>
Danke .. muss ich das "Generate Feature" auch auswählen?
 
Wenn du den Link öffnest ist beim hinzufügen der Maven Abhängigkeit in der Target Platform:
Define the feature attribute on the next wizard page.
1719470237124.png

Dieser Schritt ist wohl nötig? Muss ich hier immer die selben Daten eingeben?
 
Ich nutze kein Eclipse und wenn ich etwas Einbinde mache ich das direkt in der Pom Datei.
Ohne die Einstellfenster der IDE.
 
Du hast ja ein OSGi Projekt und damit hast Du auch die entsprechenden Features (Software Komponenten) mit den entsprechenden Abhängigkeiten untereinander.

Und das, was Du da per Maven einbindest, willst Du da ja auch irgendwo einordnen und drauf zugreifen können.

Das ist aber jetzt einfach nur mein Verständnis mit dem, was ich darüber etwas weiss. Ich selbst habe mit OSGi kaum Erfahrungen gesammelt.
 
Ich muss beim export (deployable fragments and plugins) die Abhängigkeiten mit in die JAR packen. Wenn ich ein File in den BuildPath normal einbinde, klappt das.
Aber bei Maven habe ich keine jar files die ich auswählen kann.
 
Also erst einmal direkt zu Maven:
Bei Maven sind die Dateien auch vorhanden. Die sind nur per Default erst einmal nur im local Repository (~/.m2/repository/). Du kannst aber problemlos:
  • die Dependencies auch in ein Verzeichnis Deiner Wahl kopieren
  • oder eine fat jar erstellen

Aber das ist nur die reine Maven Sicht bezüglich Abhängigkeiten.

Was du nun brauchst, ist doch, dass die Maven Abhängigkeiten auch als OSGi dependency zur Verfügung steht. Dazu hilft Dir ggf.

Aber ich habe mit OSGi bisher fast nichts gemacht und im Augenblick habe ich auch keine Ahnung, was genau Du an Projekten hast und was der Add Content Wizard da mit der feature.xml gemacht hat. Evtl. hast Du da bereits alles, was Du brauchst und es sind keine weiteren Schritte notwendig.
 
Also erst einmal direkt zu Maven:
Bei Maven sind die Dateien auch vorhanden. Die sind nur per Default erst einmal nur im local Repository (~/.m2/repository/). Du kannst aber problemlos:
  • die Dependencies auch in ein Verzeichnis Deiner Wahl kopieren
  • oder eine fat jar erstellen
Danke für den Tipp. Die 3 Dateien hätte ich gefunden. Aber wenn diese andere Abhängigkeiten benötigen, die Maven auch installiert hat, sehe ich da nicht, oder?

Kann ich eine .jar Datei von einem Maven repository machen? Wo also alle drinnen sind.
 
Im Maven Repository sind unter anderem die jar Dateien.

Wenn Du die Abhängigkeiten manuell irgendwo einfügen willst, dann nutz das dependency Plugin um die Abhängigkeiten zu kopieren.
Ruf dazu einfach einmal Maven mit dem Ziel dependency:copy-dependencies auf:
mvn dependency:copy-dependencies

Dann werden die Abhängigkeiten in das Verzeichnis target/dependencies kopiert und du hast die Dateien dann zur Hand.

Aber es scheint mir so, als ob es da bessere Wege gibt und da würde ich an Deiner Stelle noch etwas recherchieren. Deine IDE macht ja ganz offensichtlich etwas mit der feature.xml. Nur da bin ich der falsche Ansprechpartner, denn wie gesagt: Da geht meine Erfahrung gegen 0.
 

Zurück
Oben