Entwicklungsumgebun...
 
Benachrichtigungen
Alles entfernen

[Gelöst] Entwicklungsumgebung - Aufsetzen der Entwicklungsumgebung schlägt fehl

14 Beiträge
2 Benutzer
0 Reactions
454 Aufrufe
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter   [#4633]

Moin zusammen,

 

ich versuche jetzt seit etwa 2 Wochen eine gescheite Entwicklungsumgebung zu erstellen, aber leider komme ich da so gut wie garnicht weiter...

Ich finde nur Beiträge von vor 2-6 Jahren und die Anleitung ist auch schon wieder etwas älter... egal wie ich es versuche ich schaff es leider nicht deswegen wollte ich mal fragen ob jemand aktuell es schafft eine Entwicklungsumgebung in Win10/Win11 aufzusetzen?

vielleicht kann mir jemand dabei helfen? Wir könnten auch versuchen die  fakturama.info|einrichten-einer-entwicklungsumgebung| neu zuschreiben

 

Über viele Rückmeldungen würde ich mich freuen

Grüße.

Schulschluss

 



   
Zitat
(@rheydenr)
Forum-Admin Registered
Beigetreten: vor 14 Jahren
Beiträge: 4911
 

Moin, die Anleitung ist wirklich etwas veraltet. Es ist aber eigentlich ganz easy 🙂

  • Eclipse runterladen (idealerweise das RCP-Paket)
  • Git-Repo von BitBucket auschecken (aktueller Branch: release/2.2.0)
  • alles ins Eclipse importieren
  • target setzen (/org.fakturama.target/org.fakturama.target.target)
  • mvn clean package aufrufen

Damit sollte alles ok sein. Die Launch-Config ist auch da, es könnten aber ggf. paar alte Plugins drin sein, die mit den neueren Versionen aktualisiert werden müßten. Bei Bedarf gerne melden.


Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?


   
AntwortZitat
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter  

Das Problem ist Leider Laut der Anleitung muss com.sebulli.fakturama.target als target gesetzt werden aber das gibt es nicht.

Aber dafür gibt es ja die Lösung, org.fakturama.target. Das als Target und es würde klappen, wenn nicht das Problem wäre dass die Links nicht aufgelöst werden können wie im Anahng.
Dann stoße ich auch auf das Problem das ich die API Baseline nicht setzten kann weil er da nichts findet Anhang.

Leider hat auch "mvn clean" nichts gebracht. (Anhang unten in der Console).


Diese r Beitrag wurde geändert vor 5 Monaten von Schulschluss

   
AntwortZitat
(@rheydenr)
Forum-Admin Registered
Beigetreten: vor 14 Jahren
Beiträge: 4911
 

Veröffentlicht von: @schulschluss

Das Problem ist Leider Laut der Anleitung muss com.sebulli.fakturama.target als target gesetzt werden aber das gibt es nicht.

Das verstehe ich nicht ganz. Das Verzeichnis existiert doch im git, und die target-Datei liegt da drin... Die muß man öffnen und dann auf den Button oben rechts klicken (Reload target oder so heißt der). 

Du mußt den Branch release/2.2.0 nehmen, der master geht nicht (mehr), weil die Eclipse-Leute leider einige Repos weggeräumt haben. 

Baseline kannst Du nur setzen, wenn das Target geladen ist.


Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?


   
AntwortZitat
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter  

Moin,

 

okay das wusste ich nicht das Master nicht mehr geht und wir das Branch brauchen.

Leider ist in dem Branch auch "com.sebulli.fakturama.target" nicht enthalten.

Für die Nachwelt das ein Branch zu Clonen: git clone -b release/2.2.0 https:||bitbucket.org|fakturamadev|fakturama-2.git

 


Diese r Beitrag wurde geändert vor 5 Monaten von Schulschluss

   
AntwortZitat
(@rheydenr)
Forum-Admin Registered
Beigetreten: vor 14 Jahren
Beiträge: 4911

   
AntwortZitat
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter  

Kein Problem, nun komm ich auch schon etwas weiter und einige fehler sind auch schon weniger nachdem ich den Branch 2.2.0 genommen habe und nicht den Master.

Allerdings komme ich dann immernoch nicht weiter, da die Target datei die Ziele nicht auflösen kann und auch nach dem setzen der Target Platform kann ich immernoch keine API Baseline setzten.

 
Laut ANleitung sollten die Links in dem Target so aufgelöst werden:

 
 
Das Passiert bei mir Leider nicht.
 
Grüße

Diese r Beitrag wurde geändert vor 5 Monaten 5 mal von Schulschluss

   
AntwortZitat
(@rheydenr)
Forum-Admin Registered
Beigetreten: vor 14 Jahren
Beiträge: 4911
 

Die Baseline kannst Du erst setzen, wenn das Target komplett aufgelöst wurde. Falls da ein Fehler aufgetreten ist, steht der ganz am Schluß des Fensters (das sind so Einträge mit roten Kreuzchen). Dort steht auch meistens, was kaputt ist. Oftmals sind es irgendwelche Versionskonflikte, die durch Updates im Eclipse Repo zustande kommen.


Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?


   
AntwortZitat
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter  

Abend zusammen,

 

ich hab es die letzten Taage nochmal ausprobiert und so hab ich es gemacht:

 

1. Eclipse herrunterladen:

https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2024-03/R/eclipse-rcp-2024-03-R-win32-x86_64.zip

2024-03

2. Den Branch clonen:

git clone -b release/2.2.0 https://bitbucket.org/fakturamadev/fakturama-2.git

3. Die Target Version anpassen
Danach habe ich in org.fakturama.target.target:

<version>0.13.0-SNAPSHOT</version> zu <version>0.13.0</version> und includeDependencyDepth zu "infinite", weil das in der Liste der Dependency nicht auftaucht. Aktuelle Version ist hier: https://odftoolkit.org/ReleaseNotes.html

da schein wohl die Version nicht zu passen, so:

<location includeDependencyDepth="infinite" includeDependencyScopes="compile" missingManifest="generate" type="Maven">
<dependencies>
<dependency>
<groupId>org.odftoolkit</groupId>
<artifactId>odfdom-java</artifactId>
<version>0.12.0</version>
<type>jar</type>
</dependency>
</dependencies>
</location>

4. org.fakturama.target als Target setzten wie in der Anleitung  \/

5. Die Baseline API wie in der Anleitung setzten: https://www.fakturama.info/einrichten-einer-entwicklungsumgebung/

Rechtsklick auf org.fakturama.target > Run As > Maven build

Danach das gleiche bei dem Parent, Rechtsklick auf Fakturama-Parent > Run As > Maven build

Dort folgendes so ausfüllen:
Goals: clean package
Profiles: win
User settings: ..\Fakturama-Parent\com.sebulli.fakturama.model\META-INF\persistence.xml
Checkbox aktivieren bei "Update Snapshots" und "Skip Test" und die Threads auf 3

und dann Run.

Sollte das nicht Klappen wie bei mir, dann am besten folgendes löschen:
C:\Users\<PCNAME>\.m2\repository\.cache
C:\Users\<PCNAME>\.m2\repository\p2

(Falls p2 nicht existiert -> ignorieren.)

Zum Testen reicht in cmd im Parent Ordner zu sein und "mvn clean install -U" auszuführen. (Falls mvn nicht exestiert muss man es downloaden und den bin ordner zu den Umgebungsvariablen hinzufügen)

dann wird die fertige .exe erstellt. Die sich dann unter

<workspace>\fakturama-2\Fakturama-Parent\com.sebulli.fakturama.site\target\products

6. Beheben der Validierungsfehler in persistence_2.0.xsd wie auch in der Anleitung, die Datei war bei mir hier:

<workspace>\fakturama-2\Fakturama-Parent\com.sebulli.fakturama.model\model\

 

7. Fehlt nur noch das launchen aus Eclipse raus, das hat leider bei mir noch nicht geklappt, da bin ich dran....

 

FALLS HIER VON IRGENDWAS FALSCH IST BITTE SOFORT MELDEN. Dann werde ich es Korrigieren.


Diese r Beitrag wurde geändert vor 4 Monaten 3 mal von Schulschluss

   
AntwortZitat
(@rheydenr)
Forum-Admin Registered
Beigetreten: vor 14 Jahren
Beiträge: 4911
 

Moin, das ist glaube ich richtig. Für das Starten direkt aus Eclipse heraus gibt es eine Launch-Konfiguration. Die müßte aber auch schon angezeigt werden.Da muß man aber manchmal noch die Plugins bißchen nachbessern.

 


Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?


   
AntwortZitat
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter  

Ja genau die hatte ich auch aber irgendwie ging die bei mir Leider nicht deswegen guck ich aktuell noch warum...



   
AntwortZitat
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter  
Also, ich hab ein paar mal eclipse neugestartet und bei den Plug-ins in der Run Configuration auf "Select Required" geklickt. Danach auch auf Validate Plug-ins .Nach ein paar mal bin ich dann auf Fehler suche und hab folgendes geändert:
 
In der /com.sebulli.fakturama.rcp/src/main/java/com/sebulli/fakturama/dao/VatsDAO.java:
 
import com.sebulli.fakturama.model._VAT; - entfernt. (weil die Klasse nicht exestiert)
 
Alle VAT_* ersetzt durch nur das was dahinter war also, z.b VAT_.category zu "category" (mit anführungszeichen).
 
und am ende dann noch die getVisibleProperties angepasst:
public String[] getVisibleProperties() {
    return new String[] { "name", "description", "taxValue" };
}
 
 
Dann noch in der com.sebulli.fakturama.common/src/main/java/com/sebulli/fakturama/log/FakturamaLogger.java den folderWs in ein try catch geändert:
 
final String folderWs = preferenceStore.getString(Constants.GENERAL_WORKSPACE);
 
geändert zu:
 
    String folderWs = System.getProperty("user.home");


    try {
        ScopedPreferenceStore preferenceStore =
                new ScopedPreferenceStore(InstanceScope.INSTANCE, PLUGIN_ID_RCP);


        String configuredWorkspace =
                preferenceStore.getString(Constants.GENERAL_WORKSPACE);


        if (configuredWorkspace != null && !configuredWorkspace.isBlank()) {
            folderWs = configuredWorkspace;
        }
    } catch (Exception e) {
        System.out.println("Preferences not available yet, using fallback log folder: " + folderWs);
        e.printStackTrace();
    }
 
Dann noch in der com.sebulli.fakturama.common/META-INF/MANIFEST.MF angepasst und dort unter Require-Bundle den "org.eclipse.equinox.preferences" eingefügt: (weil nutzt ja die Preferences)
 
Require-Bundle: org.eclipse.equinox.preferences,
 org.eclipse.e4.core.services,
 org.apache.commons.lang3
 ......
 
Dann hab ich noch die initialize funktion in NumberFormatterService anpgeasst in com.sebulli.fakturama.common/src/main/java/com/sebulli/fakturama/misc/NumberFormatterService.java: (ScopedPreferenceStore wurde benutzt, bevor Eclipse Preferences verfügbar waren.)
 
void initialize() {


    int currencyDecimals = 2;
    boolean cashRounding = false;


    try {
        preferenceStore =
                new ScopedPreferenceStore(
                        InstanceScope.INSTANCE,
                        FakturamaLogger.PLUGIN_ID_RCP);


        useThousandsSeparator =
                preferenceStore.getBoolean(
                        Constants.PREFERENCES_GENERAL_HAS_THOUSANDS_SEPARATOR);


        currencyDecimals =
                preferenceStore.getInt(
                        Constants.PREFERENCES_GENERAL_CURRENCY_DECIMALPLACES);


        cashRounding =
                preferenceStore.getBoolean(
                        Constants.PREFERENCES_CURRENCY_USE_CASHROUNDING);


    } catch (Exception e) {


        System.out.println(
                "PreferencesService not available yet. Using defaults.");


        e.printStackTrace();


        useThousandsSeparator = false;
        currencyDecimals = 2;
        cashRounding = false;
    }


    try {
        currencyLocale = localeUtil != null
                ? localeUtil.getCurrencyLocale()
                : Locale.getDefault();
    } catch (Exception e) {
        currencyLocale = Locale.getDefault();
    }


    currencyFormat = NumberFormat.getCurrencyInstance(currencyLocale);


    try {
        OSGIServiceHelper.registerService(
                Activator.getContext().getBundle(),
                MonetaryConfigProvider.class,
                DefaultConfigProvider.class);


        mro = Monetary.getRounding(
                RoundingQueryBuilder.of()
                        .setCurrency(Monetary.getCurrency(currencyLocale))
                        .setProviderName(
                                FakturamaMonetaryRoundingProvider.DEFAULT_ROUNDING_ID)
                        .setScale(currencyDecimals)
                        .set("cashRounding", cashRounding)
                        .build());


    } catch (Exception e) {
        System.out.println(
                "Could not initialize monetary rounding. Using fallback.");
        e.printStackTrace();
        mro = null;
    }
}
 
 
Als letztes habe ich noch die handeEvent funktion angepasst in com.sebulli.fakturama.rcp/src/main/java/com/sebulli/fakturama/LifecycleManager.java: (Ohne das erscheint das Fenster kurz und startet immer wieder neu.)
 
        @Override
        public void handleEvent(final Event event) {


            System.out.println(
                "APP_STARTUP_COMPLETE reached, restartApplication="
                        + restartApplication);


            if (modelService != null) {
                final MTrimmedWindow mainMTrimmedWindow =
                        (MTrimmedWindow) modelService.find(
                                "com.sebulli.fakturama.application", app);


                final ISaveHandler saveHandler =
                        ContextInjectionFactory.make(
                                SaveHandler.class,
                                mainMTrimmedWindow.getContext());


                mainMTrimmedWindow.getContext()
                        .set(ISaveHandler.class, saveHandler);
            }


            final IWorkbench workbench = _context.get(IWorkbench.class);


            if (restartApplication) {
                System.out.println(
                    "WORKBENCH.RESTART SUPPRESSED FOR DEBUGGING");
                return;
            }
        }
 
 
Zum Schluss noch Project → Clean… und wieder Plug-ins Selecten und Validieren und siehe da, ich kann es aus Eclipse raus starten. 🙂


   
AntwortZitat
(@rheydenr)
Forum-Admin Registered
Beigetreten: vor 14 Jahren
Beiträge: 4911
 

Das ist ja echt crazy... Bei mir funktioniert das alles ohne diese Änderungen. Die Klasse Vat_ ist übrigens eine gültige Klasse. Die wird allerdings erst durch einen Maven-Build erzeugt, weil das das Metamodel für die entsprechende Entity ist. Aber wenn's jetzt geht, isses ja ok 🙂 Aber check das bitte so nicht ein.


Viele Grüße
Ralf.
Wichtige Infos zum Posten im Forum.
Fehler gefunden?


   
AntwortZitat
(@schulschluss)
Active Member
Beigetreten: vor 6 Monaten
Beiträge: 11
Topic starter  

Jau, stimmt jetzt geht es auch. Die Klasse VAT_ ist jetzt auch kein Problem mehr. Danke



   
AntwortZitat
Teilen: