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

    Compilazione lib

    Salve.. vorrei sapere se è possibile ricompilare un solo file di una libreria già compilata.. ovvero io ho il file jar con tutti i .class ma vorrei modificarne soltanto uno(avendone il source .java ovviamente) senza decompilare e ricompilare tutto.. grazie in anticipo

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    allora per la mia personale opinione, una volta che hai i sorgenti, ricompila tutto, a volte è come se il tuo eseguibile non vedesse le modifiche di una sola classe

  3. #3

    Re: Compilazione lib

    Originariamente inviato da xxxlilloxxx
    Salve.. vorrei sapere se è possibile ricompilare un solo file di una libreria già compilata.. ovvero io ho il file jar con tutti i .class ma vorrei modificarne soltanto uno(avendone il source .java ovviamente) senza decompilare e ricompilare tutto.. grazie in anticipo
    Ciao, è possibile ma non consigliabile, non è buona prassi insomma. L'obiettivo generale qual'è scusa? Perché hai necessità di farlo?
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  4. #4
    Ho scaricato una libreria e ho la necessità di modificare alcune cose.. ho fatto reverse engineering al fine di ottenere il sorgente java e ora non so come ricompilare tutti i file che sono davvero tanti.. idee?

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    puoi tentare di fare override, cioè creare una classe che estendere le classi che ti interessa modificare e utilizzare queste al posto di quella della libreria. Puoi creare anche una classe wrapper che ha al suo interno una istanza della classe che vuoi modificare, in modo da richiamare il comportamento da te voluto.
    Se queste soluzioni non ti piacciono devi avere i sorgenti, in modo da ricompilare il tutto in maniera ottimale. Il cambiamento selvaggio in una libreria distribuita non è una buona prassi di programmazione.

  6. #6
    Purtroppo è una libreria molto complessa e queste operazioni non sono effettuabili nel mio caso.. mi serve un modo di compilare tutti i file sorgenti contenuti in una cartella.. qualcuno sa come si fa?

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Ripeto se non hai i sorgenti c'è poco da fare (oltre a riscriverti tu la libreria/wrappare/estendere).
    Al max puoi chiedere ai produttori della libreria di implementare la feature o di darti i sorgenti per farlo.

  8. #8
    Originariamente inviato da xxxlilloxxx
    Ho scaricato una libreria e ho la necessità di modificare alcune cose.. ho fatto reverse engineering al fine di ottenere il sorgente java e ora non so come ricompilare tutti i file che sono davvero tanti.. idee?
    Ci sono due possibilità: o questa libreria è open source, ed allora i sorgenti li devi solo andare a scaricare separatamente perché non sono inclusi nella distribuzione che hai scaricato tu, oppure non lo è, e in questo caso è espressamente vietato dal regolamento di questo forum (o almeno lo era ma credo che per svista del moderatore sia sparita la regola) darti suggerimenti, e in generale discutere, dell'unica cosa che potresti fare: cioè decompilare i sorgenti, aggiustarli (perché è altamente improbabile che che compilino così come sono), ricompilarli e riassemblare la libreria. Questa cosa, oltre ad essere contraria alle regole del forum è anche, in generale ILLEGALE quindi la reticenza che riscontri nel darti aiuto non è casuale e probabilmente se un moderatore dovesse notare la discussione te la chiuderebbe. Mi spiace,
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  9. #9
    Chiedo scusa.. mod potete anche chiudere qui

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.