Abbiamo una build di Android basato Maven, e abbiamo appena fatto il passaggio da JDK 6 a 7.IntelliJ progetto di importazioni da POM usando sbagliato JDK versione
Questo è venuto con la sua parte di problemi IntelliJ però. Quello che succede è che ogni volta che rileva un cambiamento nel POM, e reimportazioni/aggiorna il progetto, si ritorna alla selezione del vecchio "modulo SDK", quello che è configurato per l'utilizzo di Java 6:
Anche se elimino manualmente questi SDK dalla finestra di dialogo "Impostazioni piattaforma", continuano a riapparire come "Piattaforma Maven Android API 19 (N)" dove N è il numero utilizzato per disambigerlo da tutti gli altri SDK (identici).
Devo menzionare che specifichiamo nel POM che Java 7 è mirato. Ho cercato di impostare sia il livello linguistico compilatore plug-in, e le maven.compiler.*
proprietà (non so se che compie la stessa cosa o no), senza fortuna:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
non dovrebbe prendere IntelliJ che e configurare sempre il progetto utilizzare un Java 7 SDK? Mi sto perdendo qualcosa?
Ho notato che il problema scompare quando rimuovo qualsiasi riferimento a 1.6 SDK interamente in IntelliJ. Non sorprende, suppongo, ma anche non fattibile dato che ho altri progetti che fanno ancora affidamento sulla presenza di un Java 6 SDK.
beh, non voglio cambiarlo manualmente per ogni sottomodulo ogni volta che ricarico il POM ... chiaramente questo è un bug in IntelliJ se poi è necessario? – Matthias
Se lo si imposta e il modulo principale tutti i figli lo erediteranno. – StackFlowed
Non è questo il problema. Il problema è che tutte queste cose sono state reimpostate su Java 6 dopo la reimportazione. – Matthias