Domanda

Sto cercando di utilizzare il il prototipo di chiusure BGGA con un JDK 6 esistente (standard su Mac OS X Leopardo). Il codice di esempio che sto compilando proviene da un tutorial BGGA:

public static void main(String[] args) {
  // function with no arguments; return value is always 42
  int answer = { => 42 }.invoke();
  System.out.println(answer);
}

Ho provato quanto segue e nessuno funziona:

  1. Closures.jar copiato in /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home/lib
  2. Esegui javac con -Xbootclasspath / a: /path/to/closures.jar
  3. Esegui javac con -J-Xbootclasspath / a: /path/to/closures.jar
  4. Provato da eclipse ganimede definendo la mia libreria di sistema e collegandola al mio progetto con il codice che utilizza BGGA.

In tutti e quattro i casi, ottengo errori di compilazione, che indicano che il compilatore non ha rilevato closures.jar sul percorso di classe bootstrap. Mi piacerebbe davvero far funzionare questo da eclissi, o per lo meno maven. Grazie!

È stato utile?

Soluzione

La distribuzione del file TAR include un javac.bat modificato con una riga di comando completa, incluso " -source 7 " ;, che probabilmente è quello che ti manca qui.

Altri suggerimenti

Hai provato javac con -J-Xbootclasspath invece? Viene utilizzato per passare gli argomenti -X alla VM stessa, che potrebbe essere necessario per una modifica di livello inferiore.

Dubito tuttavia che funzionerà con Eclipse. Le librerie di sistema sono per API, non per cambi di lingua. Dovresti correggere il compilatore Eclipse.

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