Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Classpath per Jsmooth

    Ciao!
    Mi piacerebbe utilizzare jsmooth per creare un eseguibile windows per una mia applicazione Java, so che non è una bella cosa, però mi piacerebbe avere del mio programma sia una versione .jar, che una .exe.
    Jsmooth mi dà un errore del tipo:

    Starting compilation
    Scanning skeleton...
    Loading Jar...
    Adding Jar to Resources...
    Adding Properties to Resources...
    Compilation failed!

    - Error: null

    Ho impostato i seguenti parametri:

    SKELETON: Windowed Wrapper
    EXECUTABLE: [nomeapplicazione.exe]
    APPLICATION: Qui ho avuto qualche dubbio. Il programma l'ho creato con NetBeans, il mio progetto ha le seguenti cartelle: BUILD (per i .class), DIST (per la distribuzione, contiene il .jar principale ed una cartella lib che contiene altri 2 ,jar), NBPROJECT (contiene file .xml e .properties), SRC (per i sorgenti) e TEST (vuota). Al di fuori di queste cartelle c'è il manifest.
    Come main class ho impostato il file main contenuto nella BUILD, come argomenti ho lasciato vuoto, poi ho selezionato "embedded jar", inserendo il file .jar principale della DIST e come classpath non sapevo bene cosa impostare, ho provato con la cartella DIST oppure BUILD ma mi dà quell'errore.
    Cosa dovrei impostare come classpath? Il programma mi dice che accetta zip o cartelle.
    Avevo cercato anche un altro programma (JavaLauncher) che richiede solo la main class; funziona ma mi crea un .exe che non si avvia

  2. #2
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    guarda ti incollo qui una pillola trovata proprio su questo sito:

    Materiale necessario:
    La classe java (anche il semplice HelloWorld di cui sopra), o meglio il jar
    JElude, che non è altro che uno script per un programma di installazione, NSIS

    Allora, parto già dal presupposto che sappiamo già come creare file jar dalle nostre classi

    Per creare allora la nostra applicazioncina, basta che facciamo una copia del file .nsi (dal sito Jelude di cui sopra), che contiene le istruzioni per creare il .exe, e lo chiamiamo pippo.nsi
    Apriamo col blocco note, e dobbiamo modificare 4/5 righe:
    !define APPNAME "Pippo"
    qui mettiamo il nome dell'applicazione, quella che compare nel task manager, per intenderci
    !define JARFILE "Pippo.jar"
    ovviamente il jar creato da noi
    Icon "pippo.ico"
    l'icona che associata al .exe (va creata con un programma apposito, stile microangelo) (facoltativo)
    OutFile "pippo.exe"
    il .exe
    e infine il messaggio nel caso in cui sulla macchina dell'utente non sia presente una JVM, messaggio che inizia con MessageBox; se vogliamo anche la riga successiva, che apre di default il sito di java per scaricare il jre

    salviamo il file pippo.nsi, e sempre da riga di comando digitiamo
    makensis pippo.nsi
    et voilà! ecco il nostro .exe!


    ottimo tutorial,se ti interessa il resto ecco il link: http://forum.html.it/forum/showthrea...hreadid=605808

  3. #3
    fatto ma mi dice che manca la classe principale. In effetti io ho il .jar principale ma anche una cartella lib che contiene altri 2 .jar. come potrei fare?

  4. #4
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    devi seguire le istruzioni del link,e devi crearti il file manifest,se scrivi jar sul prompt ti compariranno i comandi,e ci sono anche degli esempi!

  5. #5
    Il punto è che, come detto prima, uso netbeans e lui mi crea automaticamente i vari file e cartelle (compreso il manifest, che aprendolo mi dice: "Main-Class will be added automatically by build"), quindi vorrei semplicemente capire cos'è e qual'è il classpath che dovrei inserire in jsmooth. La guida dice: "Specify here the classpath used by the java application." uff

  6. #6
    Allora ho risolto il problema del classpath ... in realtà non era quello, ma il fatto che non avevo inserito la versione minima del jvm nell'apposito pannello. Adesso quindi mi crea correttamente l'exe, che però ... non parte

  7. #7
    Finalmente ho risolto !!!

    Impostavo erroneamente come main class quella che non era la main class! Per quanto riguarda il classpath mi è bastato inserire i rimanenti file .jar della sottocartella LIB (vedi sopra), il .jar principale era già inserito nel campo "embedded jar".

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.