2010-10-14 16 views
5

Questo è il contesto: ho appena sviluppato un'app che deve essere avviata in modalità SERVER (java -server). Sto utilizzando l'SDK JSE (JDK) e non ho problemi a eseguire l'app perché JDK ha il server VM. Ora, sto cercando di creare un programma di installazione in modo che le persone possano installare questa app nei loro computer. Ma a questo punto ho notato questo:Server VM necessario ma non disponibile in JRE. Allora quale pacchetto ho bisogno: JRE, JDK?

Il JRE che la maggior parte degli utenti ha installato (per eseguire app java), non ha il Server VM, quindi la mia app non verrà eseguita. A causa di ciò, la mia domanda è:

  • C'è un modo per aggiungere il server VM al JRE già installato ???
  • Per quegli utenti che non hanno java installato ... quale pacchetto dovrei suggerire di installare? JDK o JRE?

Sono un po 'confuso ... non so quali pacchetti abbiano o meno il server VM.

+1

_perché_ avete bisogno il vm server? –

+0

Perché è un'applicazione server e le prestazioni saranno migliori – testk

risposta

3

Basta usare la modalità client.

Non hai intenzione di trovare una buona soluzione. Potresti suggerire che tutti installino il JDK che ha la modalità server abilitata, ma la tua app dovrebbe avere una consegna più fluida di quella. Se stavi consegnando la tua applicazione ai ragazzi del server, potresti facilmente dire che deve essere eseguito in modalità server e lasciarli gestire.

La modalità server è un'ottimizzazione per il commercio del tempo di avvio per miglioramenti della velocità di lunga durata. Non dovrebbe essere richiesto per alcuna applicazione, in particolare quella che verrà consegnata alle macchine client.

+0

Ci sono molte ottimizzazioni che non sono state trasferite sulla VM del client. Le applicazioni client possono sicuramente trarne vantaggio. –

+0

I vantaggi e i requisiti sono due cose diverse. –

1

JRE privato e pubblico - L'installazione di JDK installa un Java Runtime Environment (JRE) privato e facoltativamente una copia pubblica. Il JRE privato è necessario per eseguire gli strumenti inclusi con JDK. Non ha impostazioni di registro ed è contenuto interamente in una directory jre (tipicamente a C:\Program Files\jdk1.6.0\jre) la cui posizione è nota solo al JDK. D'altra parte, il JRE pubblico può essere utilizzato da altre applicazioni Java, è contenuto al di fuori del JDK (tipicamente a C:\Program Files\Java\jre1.6.0), è registrato con il registro di Windows (a HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft), può essere rimosso usando Aggiungi/Rimuovi programmi, potrebbe o potrebbe non essere registrato con i browser e potrebbe avere o meno java.exe copiato nella directory di sistema di Windows (rendendolo la piattaforma Java di sistema predefinita o meno).

JDK Installation and troubleshoot.

6

Opzionalmente si può includere il server di HotSpot VM con una copia ridistribuito del JRE. La directory 'jre \ bin \ server \' all'interno del JRE privato per JDK contiene la VM del server HotSpot. È consentito includerlo con le distribuzioni di JRE a patto che si seguano i requisiti stabiliti nel README JDK.

Dal JDK 7 README:

su piattaforme Microsoft Windows, il JDK include sia la Java VM HotSpotTM Server e Java VM HotSpotTM client. Tuttavia, JRE per le piattaforme Microsoft Windows include solo la VM client Java HotSpotTM. Coloro che desiderano utilizzare Java VM HotSpotTM Server con JRE possono copiare la cartella jre \ bin \ server di JDK in una directory bin \ server in JRE. I fornitori di software possono ridistribuire la VM di Java HotSpotTM Server con le loro ridistribuzioni di JRE.

http://www.oracle.com/technetwork/java/javase/jdk-7-readme-429198.html#jre (Estratto 2012/09/22)

Problemi correlati