Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    35

    [Java]Come esportare un plugin per Eclipse in un file zip

    Ciao a tutti!

    Ho realizzato un plugin per la piattaforma Eclipse e l'ho testato avviandolo come Eclipse application. Il plugin funziona e si avvia da Eclipse attraverso un pulsante che ho inserito nella barra del menu estendendo la libreria org.ui.actionsets.

    Il problema è che avendo esteso questa libreria l'applicazione si avvia attraverso il metodo RUN dell'Action dell'ActionSets e quindi non c'è il main. Se cerco quindi di creare il file JAR eseguibile non si avvia perchè dice che non c'è la Main Class.

    Come posso fare per esportare l'applicazione in modo da rendere installabile da tutti?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [Java]Come esportare un plugin per Eclipse in un file zip

    Originariamente inviato da Matrix86
    Ho realizzato un plugin per la piattaforma Eclipse e l'ho testato avviandolo come Eclipse application. Il plugin funziona e si avvia da Eclipse attraverso un pulsante che ho inserito nella barra del menu estendendo la libreria org.ui.actionsets.

    Il problema è che avendo esteso questa libreria l'applicazione si avvia attraverso il metodo RUN dell'Action dell'ActionSets e quindi non c'è il main. Se cerco quindi di creare il file JAR eseguibile non si avvia perchè dice che non c'è la Main Class.
    Non me ne intendo di plugin di Eclipse .... ma vado per ragionamento!! Se è un plugin, il ciclo di vita è gestito da Eclipse ... vuol dire che non è l'utente che avvia il plugin!! E quindi non è una "applicazione" normale e non c'è bisogno di alcun main().

    Se uno vuole mettere il tuo plugin nel suo Eclipse, dovrà semplicemente metterlo in una cartella nota ad Eclipse e/o specificarlo ad Eclipse. Ora non so dire se il discovery del plugin è automatico o è necessario configurare qualcosa in qualche dialog di preferenza.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    35
    Certo,il ciclo di vita è gestito da Eclipse.

    Io però ora uso delle classi Java e le avvio manualmente come Eclipse Application.
    Il mio obiettivo è far sì che l'utente abbia a disposizione un file zip da cui possa estrarre il plugin direttamente nella directory di Eclipse e che quindi quando viene avviato Eclipse nel suo menu dovrebbe comparire anche un pulsante per avviare il plugin come succede a me quando faccio il test di funzionamento del plugin. Per realizzare questa cosa però ho bisogno di esportarlo e per il momento non mi riesce..

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Matrix86
    Il mio obiettivo è far sì che l'utente abbia a disposizione un file zip da cui possa estrarre il plugin direttamente nella directory di Eclipse
    Ok ... ma questo non vuol dire che devi realizzare una applicazione "desktop" con il main()!
    Vuol dire semplicemente che devi "impacchettare" e descrivere il plugin secondo le regole imposte da Eclipse. E sono sicuramente descritte da qualche parte nella documentazione ufficiale.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    35
    Ho risolto. Grazie comunque per l'aiuto!

    La procedura di esportazione era corretta,era semplicemente un problema di installazione di Eclipse. Me ne sono accorto provando il plugin su un altro pc.

    Ora l'unico problema è che il JAR mi carica i file solamente da percorso assoluto,invece io vorrei caricarli da un percorso relativo per mettere l'esecuzione corretta del plugin su qualsiasi pc..

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Matrix86
    Ora l'unico problema è che il JAR mi carica i file solamente da percorso assoluto,invece io vorrei caricarli da un percorso relativo per mettere l'esecuzione corretta del plugin su qualsiasi pc..
    Cioè?? Cosa hai fatto di preciso? Quali file? Specificati come?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    35
    Originariamente inviato da andbin
    Cioè?? Cosa hai fatto di preciso? Quali file? Specificati come?
    In pratica la prima schermata della mia applicazione contiene una JTable in cui i titoli delle colonne e il numero di righe vengono caricati da 2 differenti file di testo txt(in modo che se qualcuno volesse aggiungere qualche colonna o cambiare il numero di righe basta che modifichi i file di testo senza intervenire sul codice).
    Finchè utilizzavo solo io il mio plugin i file venivano caricati usando il percorso relativo"src/colonneJTable.txt" e mi andava bene.

    Ora che ho creato il JAR mi carica i file solamente se utilizzo il percorso assoluto completo,che però è relativo al mio hard disk quindi se un altro utente utilizzasse il plugin si ritroverebbe un FILE NOT FOUND all'avvio dell'applicazione. Dovrei caricare i file direttamente dalla directory della libreria JAR giusto?

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Matrix86
    Ora che ho creato il JAR mi carica i file solamente se utilizzo il percorso assoluto completo,che però è relativo al mio hard disk quindi se un altro utente utilizzasse il plugin si ritroverebbe un FILE NOT FOUND all'avvio dell'applicazione. Dovrei caricare i file direttamente dalla directory della libreria JAR giusto?
    Gli approcci possono essere diversi.

    a) Verificare se tra le API di Eclipse c'è la possibilità di conoscere che so ... il path della directory dei plugin o la directory di installazione di eclipse o roba simile.

    b) Verificare se tra le API di Eclipse c'è la possibilità di gestire (salvare/caricare) delle "preferenze" specifiche per il tuo plugin. E lì dentro si potrebbero salvare forse direttamente quelle informazioni che hai tu o magari anche solo configurare la locazione del file.

    c) Aspettarsi che il file sia in una locazione "nota", ad esempio la "home" directory dell'utente (che si può sapere dalla system property "user.home"). O usare la locazione nota per memorizzare un file di configurazione in cui l'utente può parametrare la locazione del file.

    d) Caricare il file come "risorsa" aspettandosi che sia "da qualche parte" in classpath. Qui però bisognerebbe vedere cosa mette in classpath Eclipse.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    35
    Originariamente inviato da andbin
    Gli approcci possono essere diversi.

    a) Verificare se tra le API di Eclipse c'è la possibilità di conoscere che so ... il path della directory dei plugin o la directory di installazione di eclipse o roba simile.

    b) Verificare se tra le API di Eclipse c'è la possibilità di gestire (salvare/caricare) delle "preferenze" specifiche per il tuo plugin. E lì dentro si potrebbero salvare forse direttamente quelle informazioni che hai tu o magari anche solo configurare la locazione del file.

    c) Aspettarsi che il file sia in una locazione "nota", ad esempio la "home" directory dell'utente (che si può sapere dalla system property "user.home"). O usare la locazione nota per memorizzare un file di configurazione in cui l'utente può parametrare la locazione del file.

    d) Caricare il file come "risorsa" aspettandosi che sia "da qualche parte" in classpath. Qui però bisognerebbe vedere cosa mette in classpath Eclipse.
    Ho fatto un pò di tentativi ma per ora non trovo un modo per caricare correttament i file.

    Non mi funzionano nemmeno i percorsi relativi con il caricamento normale..

    Funziona solo in questo modo :

    BufferedReader ColumnReader = new BufferedReader(new FileReader("Users/Ste/workspace/org.evaluation_of_design_alternatives/src/ColonneJTable.txt"));

    Però ovviamente per il plugin eseguito da JAR non va bene..

  10. #10
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Matrix86
    Ho fatto un pò di tentativi
    Nemmeno il caso c) che è il più semplice e non dipende da API specifiche o dal modo di lavorare di Eclipse???
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.