Hallo,
da wir Fakturama jetzt im Unternehmen verwenden wollen, würde gerne mithelfen, Fehler zu beseitigen. Ich habe versucht, Fakturama 2 zu installieren, gemäß https://fakturama.atlassian.net/wiki/display/FAK/Einrichten+einer+Entwicklungsumgebung
Ich scheitere schon beim Punkt "Target einrichten".
Wenn ich wie beschrieben die Datei org.fakturama.target.target öffne sind dort bei mir keine roten Markierungen und keine "Locations" Liste. Ab wo geht es denn dann für mich weiter? Wo muss ich Features auswählen, wie komme ich zu diesem Fenster der Feature-Auswahl? Und wo ist am Ende dieser Link "Set as Target Platform"?
Und was muss ich am Ende klicken, um das ganze Projekt zu compilieren und wie teste ich es dann?
Danke, Viele Grüße,
Jakob
Hallo Jakob,
wenn Du Fakturama nur installieren willst, reicht es, den Installer zu starten. Ansonsten, wenn Du mit entwickeln möchtest, dürfte die Anleitung weiterhelfen. Ich hab die mal schrittweise ausprobiert, sollte klappen. Folgende Schritte in Kurzform:
- Eclipse herunterladen und entpacken (Version Neon)
- Eclipselink herunterladen und irgendwo entpacken
- dropins.zip entpacken (ins eclipse/dropins-Verzeichnis)
- Teamset-Datei importieren
- Target-Datei öffnen und warten, bis alles runtergeladen wurde, dann "Set as Target" anklicken (das ist ein Link oben rechts) => das mit den roten Punkten passiert nur manchmal, das steht aber auch in der Anleitung drin
- im Model-Projekt das ecore-File mit rechter Maustaste anklicken und die Entity-Klassen generieren lassen
- EclipseLink im Model-Projekt als Annotation-Prozessor einstellen (damit die Metamodel-Dateien erzeugt werden können)
- Projekt mit mvn clean package bauen
- Launcher aus dem project-Ordner (siehe rcp-Projekt) starten
Geht das?
Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?
Danke Ralf, aber bei den Schritten für die IDE hab ich noch Probleme:
Bei mir gibt es kein "Set as Target" (weder bei Eclipse Neon noch bei Oxygen):

Wie kann ich die Entity Klassen generieren? Bei Neon finde ich nichts passendes im Kontextmenü der ecore Datei. Bei Oxygen weiß nicht nicht was ich auswählen muss:

Könnte diese Standard-Einstellung für den Annotation Processor stimmen (EclipseLink ist bei mir direkt in Eclipse installiert).

Und welches Projekt muss ich dann mit mvn clean package bauen? Per Kommandozeile oder Kontextmenü in Eclipse?
Vielen Dank!
Hallo Jakob,
die Target-Datei mußt Du im Target-Editor öffnen, dann sieht es auch wie auf meinem Screenshot aus.
Beim Generieren wählst Du Texo -> Generate JPA Annotated Model.
Bei den Annotation Classes mußt Du im Factory Path die Jar-Files für eclipselink, javax.persistence und jpa.modelgen einbinden (alle unterhalb von eclipselink/jlib). Möglicherweise mußt Du Dir aber wirklich eclipselink runterladen, das ist normalerweise nicht unterhalb vom Eclipse.
Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?
Das Genieren des Models hat funktioniert nur in Eclipse Oxygen. In Neon finde ich das "Texo" Menü nicht, obwohl EclipseLink in beiden installiert ist.
Weder in Oxygen noch in Neon gibt es einen Target Editor, ich kann also die target Datei nur im Texteditor öffnen.
Wo sind die Annotation Classes? Ist das ein Projekt? In welchem Dialog stelle ich dann diesen Factory Path ein?
Danke, Viele Grüße, Jakob
Das Generieren der Klassen läuft über Texo, die Metamodel-Klassen werden durch Eclipselink erzeugt. Der Target-Editor muß vorhanden sein, der gehört zur Standard-Installation von Eclipse (probiere mal rechte Maustaste -> Open with... -> Target Editor). Die Annotation Classes werden durch Eclipselink erzeugt (im src-gen-Verzeichnis). Das ist kein extra Projekt, sondern gehört ins model-Projekt. Der Dialog zum Einstellen des Factory-Zeugs befindet sich in den Einstellungen unterhalb der Annotation-Einstellungen.
Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?
Ich habe die Eclipse IDE for Java Developers. Target Editor gibt's bei mir nicht. Nicht unter "Open With ..." und nicht unter "Open With ... > Other ..." 🙁
Nach scheinbar erfolgreichen Genieren der Klassen über "Texo > Generate JPA Annotated Model" ist im Ordner src-gen nur ein leerer Unterordner main (im model Projekt).
Wo ist der Dialog für den Factory Path? In den "Properties" des model Projekts unter "Annotation Processors"? Siehe Screenshot oben, ich weiß nicht was ich da einstellen sollte.
Schade, dass die IDE so kompliziert zu installieren ist... und nicht einfach irgendein Maven Befehl.
Viele Grüße, Jakob
Hast Du mal die RCP-Version von Eclipse versucht?
Per Maven kann man das ganze natürlich auch (außerhalb von Eclipse) bauen, dazu muß man aber vorher die Klassen generiert haben (das geht momentan noch nicht außerhalb von Eclipse). Maven baut dann das komplette Produkt.
Hier nochmal mit Bild:
1. Target-Editor:

2. Eclipselink-Annotationprocessor:
3. Generierung:

Sollte das RCP-Projekt anzeigen, daß diverse *_-Klassen fehlen (z. B. Address_.java), muß man nochmal ein Clean auf das model-Projekt machen.
Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?
Danke für die Screenshots!
Mit Eclipse RCP gibt's den Target Editor (aber nicht beim Standard Eclipse oder Eclipse for Java). Gut zu wissen.
"Set as Target Platform" funktioniert jetzt.
2. Eclipselink-Annotationprocessor:
Den Dialog hab ich jetzt gefunden und bei mir stehen da auch ungültige Pfade drin. Aber wo finde ich die richtigen JARs? Wenn ich ein aktuelles EclipseLink ZIP herunterlade, befinden sich darin nicht die Dateien, die du im Screenshot oben ausgewählt hast... - http://download.eclipse.org/rt/eclipselink/updates/
. ├── artifacts.jar ├── content.jar ├── features │ ├── org.eclipse.persistence.dbws_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.dbwsbuilder_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.dbwsbuilder.source_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.dbws.source_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.jpa_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.jpa.source_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.moxy_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.moxy.source_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.nosql_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.nosql.source_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.sdk_2.6.3.v20160428-59c81c5.jar │ ├── org.eclipse.persistence.sdo_2.6.3.v20160428-59c81c5.jar │ └── org.eclipse.persistence.sdo.source_2.6.3.v20160428-59c81c5.jar └── plugins ├── cdi.api_1.0.0.v201105160744.jar ├── commonj.sdo_2.1.1.v201112051852.jar ├── commonj.sdo.source_2.1.1.v201112051852.jar ├── javax.activation_1.1.0.v201108011116.jar ├── javax.mail_1.4.0.v201005080615.jar ├── javax.persistence_2.0.6.v201308211412.jar ├── javax.persistence_2.1.1.v201509150925.jar ├── javax.persistence.source_2.0.6.v201308211412.jar ├── javax.persistence.source_2.1.1.v201509150925.jar ├── javax.resource_1.6.0.v201204270900.jar ├── javax.servlet_2.4.0.v200806031604.jar ├── javax.validation_1.1.0.v201304101302.jar ├── javax.wsdl_1.6.2.v201012040545.jar ├── javax.ws.rs_1.1.1.v20101004-1200.jar ├── javax.ws.rs.source_1.1.1.v20101004-1200.jar ├── javax.xml.bind_2.2.12.v201410011542.jar ├── javax.xml.stream_1.0.1.v201004272200.jar ├── jaxb-core_2.2.11.v201407311112.jar ├── jaxb-core.source_2.2.11.v201407311112.jar ├── jaxb-xjc_2.2.11.v201407311112.jar ├── jaxb-xjc.source_2.2.11.v201407311112.jar ├── org.eclipse.orbit.mongodb_2.10.1.v20130422-1135.jar ├── org.eclipse.orbit.mongodb.source_2.10.1.v20130422-1135.jar ├── org.eclipse.persistence.antlr_3.2.0.v201302191141.jar ├── org.eclipse.persistence.antlr.source_3.2.0.v201302191141.jar ├── org.eclipse.persistence.asm_5.0.1.v201405080102.jar ├── org.eclipse.persistence.asm.source_5.0.1.v201405080102.jar ├── org.eclipse.persistence.core_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.core.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.dbws_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.dbws.builder_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.dbws.builder.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.dbws.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.extension_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.extension.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.jpa_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.jpa.jpql_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.jpa.jpql.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.jpa.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.moxy_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.moxy.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.nosql_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.nosql.source_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.oracle_2.6.3.v20160319-fe724e6.jar ├── org.eclipse.persistence.oracleddlparser_1.0.0.v20150306.jar ├── org.eclipse.persistence.oracleddlparser.source_1.0.0.v20150306.jar ├── org.eclipse.persistence.oracle.nosql_2.6.0.v20130618-029bee0.jar ├── org.eclipse.persistence.oracle.nosql.source_2.6.0.v20130618-029bee0.jar ├── org.eclipse.persistence.oracle.source_2.6.3.v20160319-fe724e6.jar ├── org.eclipse.persistence.sdo_2.6.3.v20160428-59c81c5.jar ├── org.eclipse.persistence.sdo.source_2.6.3.v20160428-59c81c5.jar ├── org.glassfish.javax.json_1.0.4.v201311181159.jar └── org.glassfish.javax.json.source_1.0.4.v201311181159.jar 2 directories, 68 files
3. Generierung:
Ich habe alle Dropins in den dropins Ordner von Eclipse RCP entpackt. Aber das Kontextmenü der ecore Datei bietet mir kein Texo und nichts zu Generierung an 🙁 Beim Standard Eclipse ging das noch...

Dann ist es ja schon mal ein Stück weiter 😉 Eclipselink findest Du auf der Homepage von Eclipselink --> https://www.eclipse.org/eclipselink/#download
Das mit dem Texo läßt sich vermutlich beheben, indem Du entweder Eclipse -clean startest oder das Texo über den normalen Eclipse-Installationsmechanismus installierst, siehe https://wiki.eclipse.org/Texo/Download_and_Install.
Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?
Achso, ich muss also den "EclipseLink 2.6.4 Installer Zip" herunterladen, obwohl ich gar nicht plane, den Installer zu starten... ich hab's mit den anderen ZIP Dateien versucht...
Jetzt habe ich Texo über Eclipse Update Sites installiert, so funktioniert es. (Die Option -clean hat bei mir nicht geholfen.)
Wieder ein Stück weiter! (Leider ist die Eclipse RCP IDE ziemlich buggy.)
In Eclipse werden mir jetzt nur noch folgende Fehler angezeigt:
Description Resource Path Location Type An API baseline has not been set for the current workspace. com.sebulli.fakturama.model Unknown Default API Baseline Problem Bundle 'org.eclipse.draw2d' cannot be resolved MANIFEST.MF /com.sebulli.fakturama.rcp/META-INF line 55 Plug-in Problem The project was not built since its build path is incomplete. Cannot find the class file for org.eclipse.draw2d.IFigure. Fix the build path then try building this project com.sebulli.fakturama.rcp Unknown Java Problem The type org.eclipse.draw2d.IFigure cannot be resolved. It is indirectly referenced from required .class files WebShopStatusSettingsDialog.java /com.sebulli.fakturama.rcp/src/main/java/com/sebulli/fakturama/dialogs line 1 Java Problem
Ich weiß ehrlich gesagt nicht, wie ich die wegbekomme. Ich hab versucht über Update Sites das Eclipse GEF zu installieren. Das hat nichts geholfen.
Wenn ich diese Fehler ignoriere kommt beim mvn clean package folgender Fehler:
[ERROR] Cannot resolve project dependencies: [ERROR] Software being installed: Fakturama.ID 2.0.0.qualifier [ERROR] Missing requirement: Fakturama.ID 2.0.0.qualifier requires 'org.hsql.jdbc.feature.feature.group [2.3.0,2.3.1)' but it could not be found [ERROR] [ERROR] See http://wiki.eclipse.org/Tycho/Dependency_Resolution_Troubleshooting for help. [ERROR] Cannot resolve dependencies of MavenProject: com.sebulli.fakturama:com.sebulli.fakturama.site:2.0.
Also nochmal eine anderes Dependency-Problem.
Hast du Ideen? Vielen Dank!
Die API-Baseline setzt Du über die Einstellungen von Eclipse (Window -> Preferences -> Plug-in Development -> API Baselines). "Add Baseline..." -> "A target platform" -> "Fakturama Target" auswählen und "Refresh" drücken. Warten. Dann "Finish".
Das Ding mit dem HSQL hatte ich vergessen hochzuladen. Bitte nochmal Git -> Pull machen (aufpassen, dabei kann es die Einstellungen für das Eclipselink wieder überschreiben!).
Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?
Danke, scheint geklappt zu haben. Bei der API Baseline habe ich diese Einstellung gewählt:

Bin auf dem neuesten Quellcode-Stand. Ja, ich musste die drei JARs für den Annotation Processor wieder konfigurieren und die Apache commons logging JAR im Build Path vom rcp Projekt ebenso. Konnte man die 4 vordefinierten Pfade mit "D:/Javalibs/..." nicht irgendwie mit Maven Dependencies ersetzen? Apache commons Libs sollten doch zumindest verfügbar sein?
Jetzt habe ich nur noch 35 Fehler. Könntest du mir nochmal Tipps geben? Ich weiß echt nicht wo ich anfangen soll...
Description Resource Path Location Type Bundle 'org.eclipse.draw2d' cannot be resolved MANIFEST.MF /com.sebulli.fakturama.rcp/META-INF line 55 Plug-in Problem Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-clean-plugin:2.5:clean (execution: default-clean-1, phase: initialize) pom.xml /com.sebulli.fakturama.site line 9 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-compiler-plugin:0.23.1:compile (execution: default-compile, phase: compile) pom.xml /javamoney-osgi line 44 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-compiler-plugin:0.26.0:compile (execution: default-compile, phase: compile) pom.xml /com.sebulli.fakturama.common line 11 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-compiler-plugin:0.26.0:compile (execution: default-compile, phase: compile) pom.xml /com.sebulli.fakturama.model line 9 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-compiler-plugin:0.26.0:compile (execution: default-compile, phase: compile) pom.xml /com.sebulli.fakturama.rcp line 12 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-compiler-plugin:0.26.0:compile (execution: default-compile, phase: compile) pom.xml /org.fakturama.exporter.zugferd line 10 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-compiler-plugin:0.26.0:compile (execution: default-compile, phase: compile) pom.xml /org.fakturama.print.openoffice line 13 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.23.1:build-qualifier (execution: default-build-qualifier, phase: validate) pom.xml /javamoney-osgi line 48 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.23.1:validate-id (execution: default-validate-id, phase: validate) pom.xml /javamoney-osgi line 48 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.23.1:validate-version (execution: default-validate-version, phase: validate) pom.xml /javamoney-osgi line 48 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:build-qualifier (execution: default-build-qualifier, phase: validate) pom.xml /com.sebulli.fakturama.common line 4 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:build-qualifier (execution: default-build-qualifier, phase: validate) pom.xml /com.sebulli.fakturama.model line 3 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:build-qualifier (execution: default-build-qualifier, phase: validate) pom.xml /com.sebulli.fakturama.rcp line 58 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:build-qualifier (execution: default-build-qualifier, phase: validate) pom.xml /org.fakturama.exporter.zugferd line 4 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:build-qualifier (execution: default-build-qualifier, phase: validate) pom.xml /org.fakturama.print.openoffice line 3 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:build-qualifier-aggregator (execution: default-build-qualifier-aggregator, phase: validate) pom.xml /com.sebulli.fakturama.site line 3 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-id (execution: default-validate-id, phase: validate) pom.xml /com.sebulli.fakturama.common line 4 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-id (execution: default-validate-id, phase: validate) pom.xml /com.sebulli.fakturama.model line 3 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-id (execution: default-validate-id, phase: validate) pom.xml /com.sebulli.fakturama.rcp line 58 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-id (execution: default-validate-id, phase: validate) pom.xml /org.fakturama.exporter.zugferd line 4 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-id (execution: default-validate-id, phase: validate) pom.xml /org.fakturama.print.openoffice line 3 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-version (execution: default-validate-version, phase: validate) pom.xml /com.sebulli.fakturama.common line 4 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-version (execution: default-validate-version, phase: validate) pom.xml /com.sebulli.fakturama.model line 3 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-version (execution: default-validate-version, phase: validate) pom.xml /com.sebulli.fakturama.rcp line 58 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-version (execution: default-validate-version, phase: validate) pom.xml /org.fakturama.exporter.zugferd line 4 Maven Project Build Lifecycle Mapping Problem Plugin execution not covered by lifecycle configuration: org.eclipse.tycho:tycho-packaging-plugin:0.26.0:validate-version (execution: default-validate-version, phase: validate) pom.xml /org.fakturama.print.openoffice line 3 Maven Project Build Lifecycle Mapping Problem The project was not built since its build path is incomplete. Cannot find the class file for org.eclipse.draw2d.IFigure. Fix the build path then try building this project com.sebulli.fakturama.rcp Unknown Java Problem The type org.eclipse.draw2d.IFigure cannot be resolved. It is indirectly referenced from required .class files WebShopStatusSettingsDialog.java /com.sebulli.fakturama.rcp/src/main/java/com/sebulli/fakturama/dialogs line 1 Java Problem
Ich denke wenn wir das geschafft haben, haben wir den Weg für zukünftige Mitentwickler schon mal einigermaßen geebnet 🙂
Den Fehler "Plugin execution not covered by lifecycle configuration" habe ich folgendermaßen wegbekommen: Menü Window -> Preferences -> Maven -> Errors/Warnings und dann die entsprechende Einstellung "Plugin execution not covered by lifecycle configuration" auf "Ignore" setzen.
Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?
Edit: Heute nochmal versucht, BUILD SUCCESS. Keine Ahnung, warum der nicht wollte.