Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
Alt 20.01.2010, 08:30 Nach oben    #1
Erfahrener Benutzer
 
Registriert seit: 16.08.2008
Ort: Mecklenburg-Vorpommern
Beiträge: 314
Standard Java Deployment

Hallo Gemeinde,

gestern ärgerte ich mich mit ein paar ClassNotFound- und ClassDefNotFound-Exceptions rum. Ich habe in einer Applikation meine hier vorgestellte Datenbankklasse verwendet und vergessen den Classpath zum MySQL-JDBC-Treiber zu setzen (was absolut nicht aus der Fehlermeldung hervorging).
Nun stellt sich für mich natürlich die Frage: Wie müsste ich denn Software in meinem Falle verteilen?

Mir fallen spontan zwei Dinge ein:
Ich nehme einen relativen Classpath und erstelle ein eigenes Unterverzeichnis in meiner Applikation für den MySQL-Treiber. Das bedeutet für mich aus lizenzrechtlichen Gründen meine Software - sofern ich sie denn an andere verteile - unter die GPL zu stellen oder eine kostenpflichtige Lizenz für MySQL zu erwerben.

Da ich meine Datenbankklasse dynamisch gestaltet habe, könnte ich eine .txt-Konfigurations-Datei mitliefern. Der Classpath zeigt immer noch auf ein Treiberverzeichnis, allerdings muss der User in Eigenverantwortung einen gewünschten Treiber herunterladen, ins richtige Verzeichnis verschieben und den Treiber-Klassennamen in die Textdatei schreiben.
Der Vorteil hier: Er hätte nahezu freie Wahl was die Datenbanken angeht.

Die letztere Variante klingt ein wenig nach 0815 - gerade, wenn ich mir vorstelle, dass viele User die Software eher nutzen, statt verstehen wollen.
Die erste klingt eher nach dem, was ich erwarten würde.

Gibt's da noch nen dritten Weg?

Gruß
Sekundentakt ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.01.2010, 10:12 Nach oben    #2
fka Gottzilla
 
Benutzerbild von The_S
 
Registriert seit: 02.02.2005
Ort: Würzburg
Beiträge: 753
Standard

Zitat:
Zitat von Sekundentakt Beitrag anzeigen
Nun stellt sich für mich natürlich die Frage: Wie müsste ich denn Software in meinem Falle verteilen?
Deine Software liegt als ausführbare JAR vor (oder reden wir hier von nicht ausführbaren Komponenten, sprich keinen Programmen sondern Bibliotheken). Parallel zum JAR gibt es idealerweise ein Unterverzeichnis "libs". Dort kopierst du alle benötigten JARs rein. Im Classpath des JAR-Manifests verweist du auf die JARs im Lib-Verzeichnis.
The_S ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.01.2010, 10:33 Nach oben    #3
Erfahrener Benutzer
 
Registriert seit: 16.08.2008
Ort: Mecklenburg-Vorpommern
Beiträge: 314
Standard

Wir reden von ausführbaren .jar-Dateien.

Okay, soweit klar.
Ein paar Monate später erscheint ein JDBC-Update, denn es gab eine unglaublich gigantische Sicherheitslücke, die, wenn man sie alleine schon ansieht, sämtliche sensiblen Daten irreparabel löscht.
Reicht es dann, wenn ich das entsprechende .jar durch ein Neues ersetze(Namen der .jars identisch) bzw. im Manifest den Classpath auf das neue .jar umänder?
Oder gibts da noch andere Mittel und Wege, dem User etwas Arbeit abzunehmen?
Sekundentakt ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.01.2010, 11:09 Nach oben    #4
fka Gottzilla
 
Benutzerbild von The_S
 
Registriert seit: 02.02.2005
Ort: Würzburg
Beiträge: 753
Standard

Einfach das alte JAR ersetzen. Ist ein ganz normaler Update-Prozess.
The_S ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[JAVA] Wie man aus Java mit einem PHP-Script kommuniziert sparrow Tutorials 0 25.03.2006 22:24
[BUCH] Java ist auch eine Insel kampet Literatur 5 22.02.2005 14:40
Java properties cache Pfad? Für Sysadmin jr Allgemeine Java-Programmierung 0 07.12.2004 12:15
Zwist um Java als Open Source kampet Nachrichten 0 05.07.2004 03:37


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:42 Uhr.


Powered by vBulletin® Version 3.8.4 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47