Zugriff aus Jar Datei

Status
Nicht offen für weitere Antworten.

bernd

Bekanntes Mitglied
Code:
import mypackage.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
  *
  * Beschreibung.
  *
  * @version 1.0 vom 15.11.2004
  * @author
  */

public class Abruf extends JFrame {
  // Anfang Variablen
    private JButton jbuneu = new JButton();
// Ende Variablen

  public Abruf(final String title) {
    // Frame-Initialisierung
    super("Datenausgabe");
    addWindowListener(new WindowAdapter() {
      public void windowClosing(final WindowEvent evt) { System.exit(0); } });
    setBounds(50, 40, 600, 400);
    Container cp = getContentPane();
    cp.setLayout(null);

    // Anfang Komponenten
        jbuneu.setText("neuer Eintrag");
        jbuneu.setBounds(5, 340, 110, 20);
    jbuneu.setToolTipText("öffnet die Dateneingabe");
    getContentPane().add(jbuneu);
    jbuneu.addActionListener(new ActionListener() {
      public void actionPerformed(final ActionEvent evt) {
        jbuneuActionPerformed(evt); } });

// Ende Komponenten

    setVisible(true);
  }

  // Anfang Ereignisprozeduren
    public void jbuneuActionPerformed(final ActionEvent evt) {
      Adressen a1 = new Adressen("Adressen");
    }
// Ende Ereignisprozeduren

  public static void main(final String[] args) {
    new Abruf("Abruf");
  }
}

Wenn ich den Code compiliere und ausführe, wird auf Knopfdruck (jbuneu) ein JFrame (a1) angezeigt!
Die Klasse dazu liegt in einem Package.
Wenn ich allerdings aus dem Code eine Jar Datei mache kann ich die Klasse nicht mehr aufrufen!

Was läuft hier falsch?
:bahnhof:
 
R

Roar

Gast
sicher dass du die Andressen.class auch mit in die jar gepackt hast? :-O
 

bernd

Bekanntes Mitglied
Nö, sicher bin ich nicht! :)
Aber in der IDE sind unter jar Einstellungen:
*.txt, *.gif, *.class eingetragen.
Dann müssten doch die Klassen mit einbezogen werden!
 

bernd

Bekanntes Mitglied
Hab das Jar mal entpackt, Adressen.class ist nicht drin!
Wie krieg ich die da rein?
Hatte das Problem noch nie, da ich nie mehr als eine Java Datei hatte!
 

L-ectron-X

Gesperrter Benutzer
Probiere es doch einfach mal mit "Hand".
Erstelle dazu mal eine Batchdatei und schreibe folgendes rein.
Code:
@echo off
echo MakeJar.bat - erzeugen von ausführbaren jar-Dateien
echo.
rem Pfad zum SDK setzen/anpassen!
set path=.;C:\Programme\Java\jdk1.5.0\bin

rem Manifestdatei vorbereiten und erzeugen
echo Manifest-Version: 1.0>manifest.mf 

rem Bitte ClassPath angeben! (Nur falls notwendig.)
echo Class-Path: .>>manifest.mf 

rem Bitte Main-Class angeben!
rem WICHTIG! Die MAIN-CLASS ist die Klasse mit der main()-Methode.
rem Klassenname ohne Dateiendung (.class) angeben!
echo Main-Class: StartKlasse>>manifest.mf

rem Wenn Bytecode-Dateien gefunden werden, sofort jar-Datei erzeugen.
if exist *.class goto create

rem Ansonsten zunächst noch die Quellcode-Dateien kompilieren.
rem Fehlermeldung ausgeben, wenn keine Quellcode-Dateien gefunden wurden.
if not exist *.java goto errorjava
javac -O *.java

rem Jar-Datei erzeugen
:create
rem Fehlermeldung ausgeben, wenn keine Bytecode-Dateien gefunden wurden.
if not exist *.class goto errorjar
rem Bitte Name der zu erstellenden jar-Datei angeben!
rem Der Name der zu erzeugenden jar-Datei muss mit Dateiendung angegeben werden!
rem Der Eintrag "manifest.mf" ist wichtig und muss erhalten bleiben!
rem "*.class" bedeutet: es werden nur .class-Dateien ins jar-Archiv kopiert.
jar cfvm StartKlasse.jar manifest.mf *.class
goto end

:errorjava
echo java-Dateien nicht gefunden!
echo class-Dateien konnten nicht erstellt werden.

:errorjar
echo class-Dateien konnten nicht gefunden werden!
echo jar-Archiv konnte nicht erstellt werden.

:end
rem Manifest von Festplatte löschen 
del manifest.mf

rem Konsole für Ausgaben geöffnet lassen
echo.
pause
Die Datei kopierst Du in das Verzeichnis Deines Projektes.
Nur noch etwas anpassen, Batchdatei starten und schon hast Du eine ausführbare Jar-Datei erzeugt. :wink:
 

bernd

Bekanntes Mitglied
Aber das muss doch auch so gehen!
Wenn ich nur eine Java Datei habe ist es kein Problem.
Die zweite muss ich ja auch irgendwie mit einbinden können!
Den kompletten Code immer in eine Java Datei zu packen ist mir
auf dauer zu unübersichtlich! :)
 

bernd

Bekanntes Mitglied
Danke für die Hilfe,
hab es selbst rausgefunden!
Bei den Jar Einstellungen muss der Unterordner mit einbezogen werden!
Eigentlich logisch :)
*.class *.gif *.txt .\mypackage
:meld:
 

SebiB90

Top Contributor
@L-ectron-X
irgendwie funzt das nicht mit der batch datei
die hab ich einbischen verändert und siet jetzt so aus
Code:
@echo off 
echo MakeJar.bat - erzeugen von ausführbaren jar-Dateien 
echo. 

rem Manifestdatei vorbereiten und erzeugen 
echo Manifest-Version: 1.0>manifest.mf 

rem Bitte ClassPath angeben! (Nur falls notwendig.) 
echo Class-Path: .>>manifest.mf 

rem Bitte Main-Class angeben! 
rem WICHTIG! Die MAIN-CLASS ist die Klasse mit der main()-Methode. 
rem Klassenname ohne Dateiendung (.class) angeben! 
echo Main-Class: TicTacToe>>manifest.mf 

rem Wenn Bytecode-Dateien gefunden werden, sofort jar-Datei erzeugen. 
if exist *.class goto create 

rem Ansonsten zunächst noch die Quellcode-Dateien kompilieren. 
rem Fehlermeldung ausgeben, wenn keine Quellcode-Dateien gefunden wurden. 
if not exist *.java goto errorjava 
javac -O *.java 

rem Jar-Datei erzeugen 
:create 
rem Fehlermeldung ausgeben, wenn keine Bytecode-Dateien gefunden wurden. 
if not exist *.class goto errorjar 
rem Bitte Name der zu erstellenden jar-Datei angeben! 
rem Der Name der zu erzeugenden jar-Datei muss mit Dateiendung angegeben werden! 
rem Der Eintrag "manifest.mf" ist wichtig und muss erhalten bleiben! 
rem "*.class" bedeutet: es werden nur .class-Dateien ins jar-Archiv kopiert. 
jar cfvm StartKlasse.jar manifest.mf *.class 
goto end 

:errorjava 
echo java-Dateien nicht gefunden! 
echo class-Dateien konnten nicht erstellt werden. 

:errorjar 
echo class-Dateien konnten nicht gefunden werden! 
echo jar-Archiv konnte nicht erstellt werden. 

:end 
rem Manifest von Festplatte löschen 
del manifest.mf 

rem Konsole für Ausgaben geöffnet lassen 
echo. 
pause
die jar datei wird erzeugt aber er gibt mir die meldung das er nicht die main datei finden kann obwohl die drin ist.
hier mal die jar datei falls die dir hilft mir zu helfen
http://sebib90.se.funpic.de/StartKlasse.jar
 

SebiB90

Top Contributor
mein bruder hat nen scheiß pc da funzt gar nix(naja zumindest diese sache)
ich hab das mal auf meinem notebook ausprobiert und da hat es geklappt
komisch ???:L
 

thE_29

Top Contributor
vielleicht wird die jar Anwendung einfach anders gestartet ;)


statt javaw -jar vielleicht etwas anders :)
 
G

gast

Gast
Wie sieht das nun aber eigentlich aus, wenn man mehrere Pfade zu seinen Import-Packages hat, weil man sowohl eigene als auch Fremdpakete mit importieren möchte. Kann man dort mehrere Pfade angeben, oder gibts es einen anderen Weg?
 

abollm

Top Contributor
gast hat gesagt.:
Wie sieht das nun aber eigentlich aus, wenn man mehrere Pfade zu seinen Import-Packages hat, weil man sowohl eigene als auch Fremdpakete mit importieren möchte. Kann man dort mehrere Pfade angeben, oder gibts es einen anderen Weg?
Ja, ich denke, das ist ein Hinweis. Außerdem fällt mir ein, dass ja auf einem Rechner verschiedene Java-Versionen installiert sein können, d.h. hier kann also das Thema der Versionsabhängigkeit eine Rolle spielen. Eine komplexe Struktur zieht halt (mitunter) eine komplexe Fehlersuche nach sich.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
U Zugriff auf Datei sperren Allgemeine Java-Themen 5
G Letzter Zugriff auf Datei Allgemeine Java-Themen 5
G Zugriff auf Memberclasses einer geladenen Class-Datei Allgemeine Java-Themen 2
O Konkurrierender Zugriff auf Log-Datei mit Log4J Allgemeine Java-Themen 11
G Zugriff auf Dateien in jar-Datei Allgemeine Java-Themen 13
K Zugriff auf eine Datei in einem jar-Archiv Allgemeine Java-Themen 9
O Datei Zugriff aus JAR-file Allgemeine Java-Themen 4
A Dateistatus abfragen und Datei löschen sobald kein Zugriff Allgemeine Java-Themen 7
S Zugriff auf Properties-Datei Allgemeine Java-Themen 10
M Zugriff auf Excel -Datei Allgemeine Java-Themen 5
LucasGlockner Effizienter byte-Zugriff auf ein long[]-Array Allgemeine Java-Themen 8
W Klassen Zugriff auf ein Textfile aus allen Klassen. Allgemeine Java-Themen 2
izoards Zugriff auf gemeinsame Ressource (CSV-File) Allgemeine Java-Themen 3
S Java Zugriff auf Netzwerklaufwerk Allgemeine Java-Themen 1
sascha-sphw Java 9 module Zugriff auf eine resource einer anderen JAR Allgemeine Java-Themen 0
KeexZDeveoper Zugriff auf Methoden vom Server Allgemeine Java-Themen 7
O Zugriff auf mySQL ohne JDBC Allgemeine Java-Themen 3
P Element einer Liste wurde hinzugefügt, aber es gibt keinen Zugriff Allgemeine Java-Themen 2
B Maven Zugriff auf files aus einem kompilierten jar Allgemeine Java-Themen 15
S Zugriff auf jUnit Test Suite Runner-Instanzen innerhalb von Test Classes Allgemeine Java-Themen 7
W Zugriff auf Objektvariablen vs. Übergabe Allgemeine Java-Themen 3
J Zugriff auf erstellte Objekte einer Klasse von einer Klasse ausserhalb Allgemeine Java-Themen 3
Tommy Nightmare HTTP Zugriff auf Internetseite im Loginbereich Allgemeine Java-Themen 5
H Zugriff auf PHP Allgemeine Java-Themen 4
B DB-Zugriff einer Webanwendung funktioniert nicht mit Java 7 Allgemeine Java-Themen 2
M WebService - Zugriff auf Webservice Methode über Browser Allgemeine Java-Themen 1
O JNA Zugriff auf Funktion aus DLL Allgemeine Java-Themen 0
O Zugriff auf Windows Zertifikatstore Allgemeine Java-Themen 2
M Kein Zugriff auf microSD Karten Allgemeine Java-Themen 4
T Zugriff auf Datenbank Allgemeine Java-Themen 1
J Zugriff auf IMAP GMail Konto scheitert. Allgemeine Java-Themen 2
P Frontend- Zugriff auf WS- Backend Allgemeine Java-Themen 0
N Best Practice Semi-Synchronized Zugriff Allgemeine Java-Themen 0
C Zugriff auf Event felder Allgemeine Java-Themen 0
M Threads synchroner Zugriff (add/delete/read) auf eine Liste Allgemeine Java-Themen 6
F Zugriff Verweigert bei Kopieroperation? Allgemeine Java-Themen 4
T JNI: kein Zugriff auf VM in Callback-Methode eines Windows-Hooks Allgemeine Java-Themen 3
S Dynamischer Zugriff Allgemeine Java-Themen 4
Minonos Einem Programm Zugriff auf bestimmte Ordner geben Allgemeine Java-Themen 5
E Zugriff auf Dateien im Filesystem überwachen Allgemeine Java-Themen 5
H Programierstil: static - Zugriff vs. Staticzugriff Allgemeine Java-Themen 24
V Zugriff auf den Objekterzeuger? Allgemeine Java-Themen 4
M Zugriff zweier Threads auf diesselbe Methode Allgemeine Java-Themen 16
B Zugriff auf eine HashMap Allgemeine Java-Themen 4
B JApplet Zugriff auf Local Storage des Browser? Allgemeine Java-Themen 2
D Zugriff auf Array-Liste Allgemeine Java-Themen 19
M gleichzeitiger Zugriff auf eine Textdatei Allgemeine Java-Themen 6
D Eclipse Kein Zugriff auf Inhalt einer referenzierten .jar Allgemeine Java-Themen 5
B synchronisierter zugriff auf Objekt Allgemeine Java-Themen 6
nutellastulle Zugriff, Übergabe, Bearbeitung und Ausgabe von Jlist Allgemeine Java-Themen 6
U Große Liste von Strings mit indiziertem Zugriff Allgemeine Java-Themen 31
J XML Element Zugriff Allgemeine Java-Themen 4
P Daten kopieren mit nio - Zugriff verweigert Allgemeine Java-Themen 8
M Klassen Zugriff auf getMethode ohne Klasse zu erzeugen Allgemeine Java-Themen 6
A Input/Output Applet-Zugriff auf PHP-Schnittstelle (externer Server) Allgemeine Java-Themen 22
H Vererbung Abgeleitete Klassen und Zugriff Allgemeine Java-Themen 2
C Probleme mit dem Zugriff auf private Methode per reflection Allgemeine Java-Themen 2
J Zugriff auf Poker-Client Fenster Allgemeine Java-Themen 14
C Zugriff auf private Methode per reflection geht nicht mehr Allgemeine Java-Themen 3
S Zugriff auf innere Klasse Allgemeine Java-Themen 3
D Kein Zugriff auf WebService ausser localhost Allgemeine Java-Themen 4
Sonecc Zugriff auf Class File einer anderen Jar während der Laufzeit Allgemeine Java-Themen 2
J Zugriff auf Dateien auf einem shared Folder? Allgemeine Java-Themen 3
H Zugriff auf VBA in Java Allgemeine Java-Themen 2
Haave Audio Device Unavailable: Kein gleichzeitiger Zugriff auf Soundsystem möglich Allgemeine Java-Themen 7
C java.io.FileNotFoundException: (Zugriff verweigert) Allgemeine Java-Themen 14
O Zugriff auf Serielle Schnittstelle - Keine Ports gefunden. Allgemeine Java-Themen 8
C Webstart: Zugriff auf lokale Dateien? Allgemeine Java-Themen 2
X Zugriff auf ComboBoxen in Hauptklasse von zweiter Klasse aus Allgemeine Java-Themen 8
J Zugriff auf gemeinsame Funktionen Allgemeine Java-Themen 4
Airwolf89 Zugriff auf ArrayList<ArrayList> Allgemeine Java-Themen 3
Airwolf89 Zugriff auf Werte in ArrayList<ArrayList> Allgemeine Java-Themen 4
T Zugriff zwischen Klassen für repaint Allgemeine Java-Themen 7
N Zugriff auf eine Referenzvar. Allgemeine Java-Themen 3
S Zugriff auf Klasse Allgemeine Java-Themen 4
Meldanor Mehrdimensionale Arrays : Zugriff auf n-tes Array Allgemeine Java-Themen 5
E JNA:Zugriff auf Common-Block von Fortran bzw. Struct in C Allgemeine Java-Themen 2
T Zugriff auf Singleton verkürzen - Namespaces?? Allgemeine Java-Themen 20
L Zugriff auf ein Objekt mit mehreren Threads Allgemeine Java-Themen 11
Airwolf89 dynamischer Zugriff auf Variablen/ Objekte Allgemeine Java-Themen 4
S Zugriff auf einzelne Bildpunkte Allgemeine Java-Themen 3
D Referenzen weiterreichen vs. statischer Zugriff Allgemeine Java-Themen 3
V Zugriff auf Default-Package? Allgemeine Java-Themen 6
P RegeEx-Problem: Zugriff auf group Allgemeine Java-Themen 2
M Zugriff auf Parallel-Schnittstelle Allgemeine Java-Themen 2
B Zugriff mit einem Applet auf den Datenträger Allgemeine Java-Themen 11
S Innere Klasse: Zugriff auf äußere Variable Allgemeine Java-Themen 5
I Zugriff auf Daten Allgemeine Java-Themen 5
T Zugriff per Reflection o.ä. möglich? Allgemeine Java-Themen 18
D Zugriff auf Windows Dienste Allgemeine Java-Themen 7
I Gleichzeitiger zugriff auf ein Long über Threads Allgemeine Java-Themen 2
P Wieso HashMap-Zugriff mit Object, statt mit MyObject? Allgemeine Java-Themen 12
J Kein Zugriff auf Klassen im Default Package Allgemeine Java-Themen 8
M Paralleler Zugriff auf statische Methode Allgemeine Java-Themen 5
S Zugriff auf unterschiedliche JREs Allgemeine Java-Themen 7
M "Unzulässiger Zugriff auf einen Speicherbereich" Allgemeine Java-Themen 7
A Zugriff auf Parallelport nur über Eclipse nicht über .jar ! Allgemeine Java-Themen 12
G Zugriff auf ein sama share Allgemeine Java-Themen 8
J Java zugriff auf Exchange Server Allgemeine Java-Themen 10
D eclipse: Zugriff auf Ordner per code Allgemeine Java-Themen 4

Ähnliche Java Themen


Oben