Utilizzare JDK6 per compilare dinamico SRC ma dopo essere passati all'ambiente JDK ottieni ancora un null da ToolProvider.getSystemJavaCompiler ();

StackOverflow https://stackoverflow.com/questions/5907451

  •  29-10-2019
  •  | 
  •  

Domanda

Sto usando JDK6 per compilare l'ingresso di input dall'interfaccia utente e per eseguire immediatamente.

Ma il problema è che per impostazione predefinita la mia app sta usando JRE non JDK, quindi:

JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();

restituire sempre nulla;

E ho notato che è installato anche su ogni server JDK6, quindi scrivo questo per aspettarti di risolvere questo problema:

System.setProperty("java.home", "\opt\jdk-i386-60");
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
// Dynamic compile and run app

Ma non ha funzionato, forse l'ambiente Java non cambierà in quel posto che ho appena impostato immediatamente, ha ancora l'oggetto null.

Quindi, la mia domanda è come cammini il tuo ambiente JRE a JDK e rendi immediatamente effetto che possiamo ottenere l'oggetto Javacompiler?

Grazie.

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top