[Frage] JFritz compilieren

houyhnhnm

Neuer User
Mitglied seit
6 Jul 2006
Beiträge
88
Punkte für Reaktionen
0
Punkte
6
Ich würde gerne JFritz compilieren, es gelingt mir aber nicht. Gibt es irgendwo genaue Angaben über die erforderliche Entwicklungsumgebung, Bibliotheken etc. und wie die Komponenten in das gesamte Projekt integriert werden müssen?

Ich benutze Netbeans 11.1 unter Linux Mint 19 als IDE.
 
Zuletzt bearbeitet:
Irgendwas läuft hier ganz merkwürdig schief:
Ich habe eben eine Benachrichtigung bekommen, dass koyaanisqatsi vor über 1 Stunde geantwortet hat – hier im Forum sehe ich aber keine Antwort.

Zitat koyaanisqatsi:
> Moinsen
>
>
> Ist doch Java, welches auch auf meiner Linux Workstation auf dem Desktop läuft.
> Willste für Windows compilieren?

Antwort: Nein, ich will für Linux compilieren. Dazu habe ich das jfritz-Projekt von github geclont und versucht zu compilieren – geht nicht, es fehlen weitere Projekte, wie ich nach einiger Suche in einer uralten(!) Beschreibung, von der nicht ersichtlich war, dass sie noch aktuell ist, in deren Umfeld war noch von CVS die Rede – dann schließlich herausgefunden habe.

Ich habe die dann auch noch geclont und alle zusammen in Netbeans geladen und compiliert. 2 oder 3 gehen durch, der Rest steigt mit Fehlern ab, die irgendwas mit den Referenzen auf die übrigen zu tun haben müssen.

So intuitiv ist es offenbar doch nicht, wie man nach jahrelanger Betriebsblindheit denkt.
 
Zuletzt bearbeitet:
Moinsen


Ja, hab den Beitrag ( wegen überlesenen NetBeans ) wieder gelöscht.
...und das auch als "Löschgrund" angegeben.

Aber JFritz will unter Linux ins /opt Verzeichnis installiert werden.
Deswegen vermute ich mal, dass da ein "Rechteproblem" ( root ) mit einspielt.
Ich poste mal den JFritz.desktop ...
Code:
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Name=JFritz
Comment=An application to communicate with your FRITZ!Box
Exec=/usr/bin/jfritz
Icon=/opt/JFritz/jfritz.png
Categories=Utility;TelephonyTools;Java
StartupNotify=true
Und das Verzeichnis in /opt ...
Code:
$ l /opt/JFritz/
insgesamt 24M
drwxr-xr-x 6 root root  400 Feb  1  2020 ./
drwxr-xr-x 9 root root  128 Aug 28 17:48 ../
-rw-r--r-- 1 root root  15K Feb  1  2020 Changelog.txt
-rw-r--r-- 1 root root  84K Feb  1  2020 jfritz.ico
-rw-r--r-- 1 root root  24M Feb  1  2020 jfritz.jar
-rw-r--r-- 1 root root 6,9K Feb  1  2020 jfritz.png
drwxr-xr-x 3 root root  640 Feb  1  2020 lang/
-rw-r--r-- 1 root root  16K Feb  1  2020 LICENSE.GPL
-rw-r--r-- 1 root root  983 Feb  1  2020 log4j.xml
drwxr-xr-x 7 root root  208 Feb  1  2020 number/
drwxr-xr-x 2 root root   80 Feb  1  2020 pictures/
-rw-r--r-- 1 root root  607 Feb  1  2020 README-de
-rw-r--r-- 1 root root  331 Feb  1  2020 README-en
drwxr-xr-x 2 root root  128 Feb  1  2020 styles/

Die vermeintliche Binary ist ein Skript...
/usr/bin/jfritz
Code:
#!/bin/sh

JFRITZ_HOME=/opt/JFritz
JFRITZ_JAR=$JFRITZ_HOME/jfritz.jar

mkdir -p ~/.jfritz
cd ~/.jfritz

pgrep -U $USER -f "$JFRITZ_JAR" >/dev/null
[ $? -eq 1 ] && rm -f .lock

exec java -Xmx512M -jar "$JFRITZ_JAR" "$@" &
 
...und das auch als "Löschgrund" angegeben.

Sieht den außer dir irgend jemand?

Aber JFritz will unter Linux ins /opt Verzeichnis installiert werden.
Deswegen vermute ich mal, dass da ein "Rechteproblem" ( root ) mit einspielt.

Nein, das ist es sicher nicht, denn die einzige Änderung, die an der schon lange wunderbar laufenden Hard- und Softwarekonfiguration gemacht habe, ist der Austausch der 7270 gegen eine 7530; JFritz ist natürlich in /opt installiert. Die Einstellungen wurden per Backup in die 7530 übernommen und ein paar wenige neue Punkte nachjustiert.

Mit der 7270 lief die JFritz-Installation reibungslos, mit der 7530 gibt es Probleme mit dem Wählen und der Anrufliste, die genau einmal abgeholt und dann in der FB deaktiviert wird.

Das war aber nicht meine Frage. Ich wollte eigentlich wissen, wie ich JFritz mit Netbeans compiliert bekomme.
 
Also nochmal:

Wie bekomme ich JFritz mit Netbeans compiliert?
 
Wahrscheinlich gar nicht, denn es ist ein Eclipse Project.
 
Wahrscheinlich gar nicht, denn es ist ein Eclipse Project.

Ich kann auch Eclipse nehmen, obwohl ich dieses Monster nicht mag…
Aber woran sieht man an den Daten, die von github für jfritz kommen, dass es sich um ein Eclipse-Projekt handelt?

Gibt es irgendwo eine Beschreibung, wie man das jfritz-Projekt in Eclipse aufsetzt?
 
Moin moin,

JFritz ist kein Eclipse-Projekt. JFritz lässt sich mittels maven compilieren.

Ich hoffe, du (houyhnhnm) nimmst die offizielle Github-Seite des JFritz-Projekts: https://github.com/jfritz-org/jfritz
Dort steht in der Readme, dass man nur den Befehl
Code:
mvn clean install
benötigt, um die Compilierung zu starten. Ergebnis ist, wie bei Maven üblich, in dem Unterordner ./target zu finden.

Natürlich brauchst du auch noch die Dependencies, die sich genau so mit mvn clean install compilieren lassen:
- https://github.com/jfritz-org/proxy
- https://github.com/jfritz-org/fboxlib
- https://github.com/jfritz-org/reverseLookup

Grüße
Robert
 
OK, ich will aber nicht um des Compilierens willen compilieren, sondern herausfinden, wo es klemmt beim Abholen der Anrufliste und beim Wählen – dazu ist m.A. ein .deb nicht das Vehikel der Wahl. Deswegen meine Idee, das mit Netbeans zu bewerkstelligen und dort den Debugger zu benutzen.

In welcher Umgebung / mit welchen Werkzeugen debugt ihr JFritz?
 
Gibts auch irgend was kostenloses dafür?
 
Hier scheitern leider alle Versuche, jfritz zu compilieren:
$ mvn clean install
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.google.inject.internal.cglib.core.$ReflectUtils$1 (file:/usr/share/maven/lib/guice.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[INFO] Scanning for projects...
[INFO]
[INFO] -------------------------< org.jfritz:jfritz >--------------------------
[INFO] Building jfritz 0.7.9-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
The POM for org.jfritz:proxy:jar:1.0.2 is missing, no dependency information available
The POM for org.jfritz:reverseLookup:jar:1.0.12 is missing, no dependency information available
The POM for de.bausdorf.fritz:FritzTR064:jar:0.9.5 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.491 s
[INFO] Finished at: 2020-09-13T23:04:36+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project jfritz: Could not resolve dependencies for project org.jfritz:jfritz:jar:0.7.9-SNAPSHOT: The following artifacts could not be resolved: org.jfritz:proxy:jar:1.0.2, org.jfritz:reverseLookup:jar:1.0.12, de.bausdorf.fritz:FritzTR064:jar:0.9.5: Failure to find org.jfritz:proxy:jar:1.0.2 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

Das scheint ein Maven-Problem zu sein. Leider kann ich mit den Fehlermeldungen nichts anfangen.

Folgende Java-Version ist installiert:
$ java --version
openjdk 11.0.8 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu118.04.1)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu118.04.1, mixed mode, sharing)
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.