Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Jar come demone

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    323

    Jar come demone

    Ciao,
    è possibile e se si come lanciare un file jar (o eseguibile in java) come demone su windows?

    In pratica ho un programma e vorrei fosse eseguito in background come uno di quella serie di processi lanciati dall'utente che appaiono in task manager.

    Grazie
    someone told me
    love would all save us
    but how can that be
    look what love gave us

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

    Re: Jar come demone

    Originariamente inviato da stoppy
    è possibile e se si come lanciare un file jar (o eseguibile in java) come demone su windows?
    Chiariamo ... perché parlare di "demone" può essere frainteso.
    Intendi un "servizio" di sistema?? Su Windows un "servizio NT" parte prima del logon e può avere dei privilegi speciali.
    Questo con Java puro non lo puoi fare. Quello che puoi fare è mettere un collegamento sotto il menù "Esecuzione automatica" oppure nel registry di Windows mettere una voce in una chiave particolare (HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr entVersion\Run oppure HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Run).
    Ma questo vuol solo dire che ciò che fai lanciare viene eseguito nel momento in cui l'utente si logga. E non diventa affatto un "servizio" ... solo una normale applicazione.
    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
    Jan 2003
    Messaggi
    323
    Ciao,
    ho fatto come hai detto (scusa il ritardo ma ho avuto problemi nella creazione del mio programma java).
    Ho provato ad inserire il codice a mano (poi creo uno script in c), funziona tutto bene solo che quando avvio windows mi si apre la console e se la chiudo il mio programma smette di funzionare.

    Che comando devo scrivere come chiave di registro in modo che mi parta in background?

    Ora come ora ho scritto "java -jar c:\nomeprogramma.jar"

    Grazie
    someone told me
    love would all save us
    but how can that be
    look what love gave us

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Lo puoi inserire nelle operazioni pianificate (usa l'utility javaw per Windows, così non hai la consolle attiva). Ogni giorno, alla tal ora, viene eseguita la tua applicazione. Con i dovuti controlli (a livello di applicazione) puoi fare in modo che, se è già in esecuzione, la seconda istanza termini.

    Questo ha un duplice vantaggio:

    1) Non hai bisogno di "trasformare" la tua applicazione in un servizio
    2) All'eventuale longon dell'utente l'applicazione sarà in esecuzione in background (non sarà visibile anche se provvisto di interfaccia grafica, se non nel task manager).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.