Di che lampadina stiamo parlando?
Sai compilare da riga di comando? E' semplice: javac NomeFile.java

Se stai anche cercando di usare un IDE, allora ti stai facendo molto più male di quanto ti immagini... lascia perdere: usa la riga di comando, è più facile e più immediata.

Poi, una cosa che forse non era chiara: la dichiarazione dell'oggetto "due" la devi fare dentro ad ogni metodo dove, al momento, stai usando BigInteger.TWO e sostituire, di conseguenza, ciascuna di queste chiamate con il riferimento all'oggetto "due".

In alternativa, puoi dichiarare l'oggetto "due" come costante statica della classe... quindi la dua classe potrebbe cominciare così:

codice:
public class PrimeGenerator {
   private static final BigInteger due = new BigInteger(2);
   ...
}
In questo modo, puoi usare tranquillamente il riferimento all'oggetto "due" in ogni metodo della classe, senza doverlo dichiarare ogni volta.


Ciao.