Vor langer Zeit unterstützt das Java-Erweiterungspaket für Visual Studio-Code (im Folgenden VS-Code) (https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack) jetzt 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
Als ich JEP 355: Textblöcke (Vorschau) ausprobierte, war "Textblöcke eine Vorschaufunktion und standardmäßig deaktiviert. Verwenden Sie zum Aktivieren die Option" Vorschau - aktivieren " Ich habe den Fehler bekommen.
Ja, ich dachte, ich müsste --enable-Preview hinzufügen, aber wie gebe ich das für VSCode an? Ich hielt für einen Moment inne und sah nach.
Der obige Fehler trat in einem Projekt mit Maven auf, sodass ich ihn beheben konnte, indem ich die folgende Beschreibung zum Compiler-Plugin von Maven hinzufügte, unabhängig von VSCode.
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<compilerArgs>--enable-preview</compilerArgs>
</configuration>
</plugin>
Darüber hinaus ist [JDT (Java Development Tool)](https: // www.) In Sprachunterstützung für Java des Java Extension Pack enthalten. Es wurde auch durch Setzen von eclipse.org/jdt/) gelöst. Referenz: https://github.com/redhat-developer/vscode-java/issues/671#issuecomment-477379761
Da der Ordner .settings im Java-Projekt erstellt wird, öffnen Sie einfach die Datei org.eclipse.jdt.core.prefs und fügen Sie "org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures = enabled" hinzu. ..
Als ich versuchte, was passieren würde, wenn ich Maven nicht verwenden würde, konnte ich es ohne besonderen Fehler ausführen. Wenn Sie genau hinschauen, wurde es mit --enable-Preview ausgeführt.
Scheint es in Debugger für Java im Java Extension Pack angegeben zu sein? Ich wundere mich.
Ich habe nach dem Github-Code gesucht und ihn unten gefunden.
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";
}
Es schien durch das Flag COMPILER_PB_ENABLE_PREVIEW_FEATURES gesteuert zu werden, und die Flags waren: Die Standardeinstellung scheint aktiviert zu sein. (Ist es richtig?
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);
}
Als ich die Demo von @ bitter_fox bei der Oracle Code One 2019 Briefing Session sah, an der ich neulich teilgenommen habe, dachte ich, "Oh" ist Text. Der Rohling in der ersten Zeile der Blöcke wurde durch die Schließposition am Ende bestimmt. Ich habe es versucht und es hat funktioniert. Es war nüchtern, aber etwas Beeindruckendes.
Recommended Posts