Il y a longtemps, le pack d'extension Java de Visual Studio Code (ci-après VS Code) (https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack) prend désormais en charge JDK 13.
Hey! Looks like we have another release already! vscode-java 0.50.0 brings support for Java 13 (Eclipse/Maven only for the moment), diagnostic tags, finer progress report on imports, moar code actions... See https://t.co/kYv133rfTT
— VSCode Java (@VSCodeJava) October 1, 2019
Is this the best release ever or what? pic.twitter.com/Qlv1cHnK4A
Quand j'ai essayé JEP 355: Text Blocks (Preview), "Text Blocks est une fonction de prévisualisation et désactivée par défaut. Utilisez --enable-preview pour activer J'ai eu l'erreur.
Oui, je pensais que je devais ajouter --enable-preview, mais comment spécifier cela pour VSCode? Je me suis arrêté un moment, alors j'ai regardé.
L'erreur ci-dessus s'est produite dans un projet utilisant Maven, j'ai donc pu la résoudre en ajoutant la description suivante au plug-in du compilateur de Maven quel que soit le VSCode.
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<compilerArgs>--enable-preview</compilerArgs>
</configuration>
</plugin>
De plus, [JDT (Java Development Tool)](https: // www.) Inclus dans Language Support for Java de Java Extension Pack. Il a également été résolu en définissant eclipse.org/jdt/). Référence: https://github.com/redhat-developer/vscode-java/issues/671#issuecomment-477379761
Puisque le dossier .settings est créé dans le projet Java, ouvrez simplement le fichier org.eclipse.jdt.core.prefs et ajoutez «org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures = enabled». ..
Quand j'ai essayé ce qui se passerait si je n'utilisais pas Maven, j'ai pu l'exécuter sans erreur particulière. Si vous regardez attentivement, il fonctionnait avec --enable-preview.
Semble-t-il être spécifié dans Debugger for Java dans le Java Extension Pack? Je me demande.
J'ai cherché le code Github et je l'ai trouvé ci-dessous.
https://github.com/microsoft/vscode-java-debug/blob/master/src/configurationProvider.ts#L220
// Auto add '--enable-preview' vmArgs if the java project enables COMPILER_PB_ENABLE_PREVIEW_FEATURES flag.
if (await lsPlugin.detectPreviewFlag(config.mainClass, config.projectName)) {
config.vmArgs = (config.vmArgs || "") + " --enable-preview";
}
Il semblait être contrôlé par l'indicateur COMPILER_PB_ENABLE_PREVIEW_FEATURES, et les indicateurs étaient: La valeur par défaut semble être activée. (Est-ce correct?
https://github.com/microsoft/vscode-java-debug/blob/master/src/languageServerPlugin.ts#L76
const COMPILER_PB_ENABLE_PREVIEW_FEATURES: string = "org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures";
export async function detectPreviewFlag(className: string, projectName: string): Promise<boolean> {
const expectedOptions = {
[COMPILER_PB_ENABLE_PREVIEW_FEATURES]: "enabled",
};
return checkProjectSettings(className, projectName, true, expectedOptions);
}
Dernier point mais non le moindre, quand j'ai vu la démo de @ bitter_fox à la réunion du rapport Oracle Code One 2019 à laquelle j'ai assisté l'autre jour, j'ai pensé que "Oh" c'est du texte. Le blanc sur la première ligne de blocs a été déterminé par la position de fermeture à la fin. Je l'ai essayé et cela a fonctionné. C'était sobre mais quelque chose d'impressionnant.
Recommended Posts