{"id":1127,"date":"2023-08-29T20:28:45","date_gmt":"2023-08-30T03:28:45","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/java-ch\/?p=1127"},"modified":"2023-08-29T20:28:45","modified_gmt":"2023-08-30T03:28:45","slug":"java-on-visual-studio-code-2023-08","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/java-ch\/java-on-visual-studio-code-2023-08\/","title":{"rendered":"Java on Visual Studio Code\u7684\u66f4\u65b0 \u2013 2023\u5e748\u6708"},"content":{"rendered":"<p>\u5927\u5bb6\u597d\uff0c\u6b22\u8fce\u6765\u5230 Visual Studio Code for Java \u7684 8 \u6708\u66f4\u65b0\uff01\u5728\u8fd9\u7bc7\u535a\u5ba2\u4e2d\uff0c\u6211\u4eec\u5c06\u4e3a\u60a8\u63d0\u4f9b\u6709\u5173\u53cd\u7f16\u8bd1\u5668\u652f\u6301\u7684\u66f4\u591a\u6539\u8fdb\u3002\u6b64\u5916\uff0c\u6211\u4eec\u5c06\u5c55\u793a\u5982\u4f55\u521b\u5efa\u6ca1\u6709\u539f\u578b\u7684 Maven \u9879\u76ee\u4ee5\u53ca\u4e00\u9879\u91cd\u8981\u9519\u8bef\u4fee\u590d\u3002\u8ba9\u6211\u4eec\u5f00\u59cb\u5427\uff01<\/p>\n<h2><span style=\"font-size: 18pt;\"><strong>\u66f4\u591a\u53cd\u7f16\u8bd1\u5668\u652f\u6301\u6539\u8fdb<\/strong><\/span><\/h2>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/java\/java-on-visual-studio-code-july-2023\/\">\u4e0a\u4e00\u7bc7\u535a\u5ba2<\/a>\u4e2d\u5c06\u5f3a\u5927\u7684Fernflower\u53cd\u7f16\u8bd1\u5668\u5f15\u5165\u6211\u4eec\u7684\u63d2\u4ef6\u65f6\uff0c\u6211\u4eec\u6536\u5230\u4e86\u6765\u81ea\u793e\u533a\u7684\u826f\u597d\u53cd\u9988\u3002\u4e0d\u8fc7\uff0c\u6839\u636e\u76ee\u524d\u7684\u4f53\u9a8c\uff0c\u6211\u4eec\u4ecd\u7136\u53ef\u4ee5\u505a\u4e86\u4e00\u4e9b\u6539\u8fdb\u3002\u6211\u4eec\u4e3b\u8981\u8986\u76d6\u4e86\u5bf9\u4e24\u4e2a\u4e3b\u8981\u6848\u4f8b\u7684\u652f\u6301\uff1a<\/p>\n<p><strong>\u6848\u4f8b\u4e00\uff1a\u5141\u8bb8\u5f00\u53d1\u8005\u5728\u53cd\u7f16\u8bd1\u6e90\u7801\u548c\u539f\u59cb\u4e0b\u8f7d\u6e90\u7801\u4e2d\u5207\u6362<\/strong><\/p>\n<p>\u6b64\u529f\u80fd\u5c06\u5141\u8bb8\u5f00\u53d1\u4eba\u5458\u901a\u8fc7 Visual Studio Code \u7684\u5f39\u51fa\u7a97\u53e3\u5728\u53cd\u7f16\u8bd1\u7684\u6e90\u4ee3\u7801\u548c\u4e0b\u8f7d\u7684\u6e90\u4ee3\u7801\u4e4b\u95f4\u5207\u6362\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full\" src=\"https:\/\/devblogs.microsoft.com\/java\/wp-content\/uploads\/sites\/51\/2023\/08\/switchtodwnloadedsrouce.gif\" width=\"2998\" height=\"1404\" \/><\/p>\n<p><strong>\u6848\u4f8b2\uff1a\u652f\u6301\u201cAttach Source\u201d\u64cd\u4f5c\uff0c\u4ee5\u4fbf\u5f00\u53d1\u8005\u53ef\u4ee5\u5728\u9700\u8981\u65f6\u9644\u5c5e\u539f\u59cb\u6e90\u4ee3\u7801\u3002<\/strong><\/p>\n<p>\u6709\u65f6\uff0c\u5f00\u53d1\u8005\u60f3\u8981\u9644\u5c5e\u539f\u59cb\u6e90\u4ee3\u7801\u800c\u4e0d\u662f\u53cd\u7f16\u8bd1\u7684\u4ee3\u7801\uff0c\u5e76\u8c03\u51fa\u4e0a\u4e0b\u6587\u83dc\u5355\u5e76\u5355\u51fb\u201cAttach Source\u201d\uff0c\u5f00\u53d1\u8005\u53ef\u4ee5\u8f7b\u677e\u5730\u505a\u5230\u8fd9\u4e00\u70b9\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full\" src=\"https:\/\/devblogs.microsoft.com\/java\/wp-content\/uploads\/sites\/51\/2023\/08\/attach_source.gif\" width=\"2060\" height=\"1404\" \/><\/p>\n<p>\u6211\u4eec\u5e0c\u671b\u901a\u8fc7\u7528\u6237\u4f53\u9a8c\u6539\u8fdb\uff0c\u5f00\u53d1\u8005\u5c06\u80fd\u66f4\u9ad8\u6548\u5730\u4f7f\u7528\u53cd\u7f16\u8bd1\u5668\u7684\u76f8\u5173\u529f\u80fd\u3002<\/p>\n<h2><span style=\"font-size: 18pt;\"><strong>\u521b\u5efa\u6ca1\u6709 Archetype \u7684 Maven \u9879\u76ee<\/strong><\/span><\/h2>\n<p>\u9664\u4e86\u53cd\u7f16\u8bd1\u5668\u4f53\u9a8c\u6539\u8fdb\u4e4b\u5916\uff0c\u6211\u4eec\u8fd8\u5bf9 Maven for Java \u63d2\u4ef6\u589e\u52a0\u4e86\u65b0\u529f\u80fd\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u5f00\u53d1\u8005\u53ea\u60f3\u5feb\u901f\u521b\u5efa\u4e00\u4e2a\u6ca1\u6709\u4efb\u4f55\u539f\u578b\u7684 Maven \u9879\u76ee\uff0c\u4f8b\u5982 Hello World \u7a0b\u5e8f\u3002\u6211\u4eec\u6700\u8fd1\u53d1\u5e03\u7684\u7248\u672c\u4e2d\u542f\u7528\u4e86\u6b64\u5de5\u4f5c\u6d41\u7a0b\u3002\u4f7f\u7528\u63d2\u4ef6\u521b\u5efa Maven \u9879\u76ee\u65f6\uff0c\u5f00\u53d1\u4eba\u5458\u53ea\u9700\u4ece\u4e0b\u62c9\u5217\u8868\u4e2d\u9009\u62e9\u201cNo Archetype\u201d\uff0c\u51e0\u79d2\u949f\u5185\u5c31\u4f1a\u521b\u5efa\u4e00\u4e2a\u57fa\u672c\u9879\u76ee\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full\" src=\"https:\/\/devblogs.microsoft.com\/java\/wp-content\/uploads\/sites\/51\/2023\/08\/create_maven_archetype.gif\" width=\"1264\" height=\"868\" \/><\/p>\n<h2><span style=\"font-size: 18pt;\"><strong>\u9519\u8bef\u4fee\u590d\uff1a\u4e0d\u540c\u6b65\u7684\u4ee3\u7801\u9ad8\u4eae<\/strong><\/span><\/h2>\n<p>\u9664\u4e86\u4e0a\u9762\u7684\u66f4\u65b0\u4e4b\u5916\uff0c\u6211\u4eec\u6700\u8fd1\u4ece\u7528\u6237\u53cd\u9988\u4e2d\u770b\u5230\uff0c\u6211\u4eec\u7684\u8bed\u4e49\u9ad8\u4eae\u663e\u793a\u6709\u65f6\u4f1a\u4e0d\u540c\u6b65\uff0c\u4ece\u800c\u5728\u9605\u8bfb\u548c\u952e\u5165\u4ee3\u7801\u65f6\u9020\u6210\u95ee\u9898\u3002\u6211\u4eec\u82b1\u4e86\u4e00\u4e9b\u65f6\u95f4\u6765\u8c03\u67e5\u6b64\u95ee\u9898\u5e76\u4fee\u590d\u4e86\u8be5\u95ee\u9898\u3002\u4ee5\u4e0b\u662f\u89e3\u51b3\u8fd9\u4e9b\u95ee\u9898\u7684 PR\uff1a<\/p>\n<ul>\n<li><a class=\"fui-Link ___1eya986 f3rmtva f1ewtqcl fyind8e f1k6fduh f1w7gpdv fk6fouc fjoy568 figsok6 f1hu3pq6 f11qmguv f19f4twv f1tyq0we f1g0x7ka fhxju0i f1qch9an f1cnd47f fqv5qza f1vmzxwi f1o700av f13mvf36 f1cmlufx f9n3di6 f1ids18y f1tx3yz7 f1deo86v f1eh06m1 f1iescvh fhgqx19 f1olyrje f1p93eir f1nev41a f1h8hb77 f1x7u7e9 f10aw75t fsle3fq f17ae5zn\" title=\"https:\/\/github.com\/eclipse\/eclipse.jdt.ls\/pull\/2709\" href=\"https:\/\/github.com\/eclipse\/eclipse.jdt.ls\/pull\/2709\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Link Fix wrong semantic highlighting due to out-of-date AST being used. by jdneo \u00b7 Pull Request #2709 \u00b7 eclipse\/eclipse.jdt.ls (github.com)\">Fix wrong semantic highlighting due to out-of-date AST being used. by jdneo \u00b7 Pull Request #2709 \u00b7 eclipse\/eclipse.jdt.ls (github.com)<\/a><\/li>\n<li><a class=\"fui-Link ___1eya986 f3rmtva f1ewtqcl fyind8e f1k6fduh f1w7gpdv fk6fouc fjoy568 figsok6 f1hu3pq6 f11qmguv f19f4twv f1tyq0we f1g0x7ka fhxju0i f1qch9an f1cnd47f fqv5qza f1vmzxwi f1o700av f13mvf36 f1cmlufx f9n3di6 f1ids18y f1tx3yz7 f1deo86v f1eh06m1 f1iescvh fhgqx19 f1olyrje f1p93eir f1nev41a f1h8hb77 f1x7u7e9 f10aw75t fsle3fq f17ae5zn\" title=\"https:\/\/github.com\/eclipse\/eclipse.jdt.ls\/pull\/2714\" href=\"https:\/\/github.com\/eclipse\/eclipse.jdt.ls\/pull\/2714\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Link Prevent caching outdated AST in CoreASTProvider by 0dinD \u00b7 Pull Request #2714 \u00b7 eclipse\/eclipse.jdt.ls (github.com)\">Prevent caching outdated AST in CoreASTProvider by 0dinD \u00b7 Pull Request #2714 \u00b7 eclipse\/eclipse.jdt.ls (github.com)<\/a><\/li>\n<\/ul>\n<h4><strong>\u5b89\u88c5 Java \u63d2\u4ef6\u5305<\/strong><\/h4>\n<p>\u8981\u4f7f\u7528\u4e0a\u8ff0\u6240\u6709\u529f\u80fd\uff0c\u8bf7\u5728 Visual Studio Code \u4e0a\u4e0b\u8f7d\u5e76\u5b89\u88c5<a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=vscjava.vscode-java-pack\">Extension Pack for Java<\/a> \u3002<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/09\/javapack.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-819\" src=\"https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/09\/javapack.png\" alt=\"Image javapack\" width=\"1215\" height=\"238\" srcset=\"https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/09\/javapack.png 1215w, https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/09\/javapack-300x59.png 300w, https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/09\/javapack-1024x201.png 1024w, https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/09\/javapack-768x150.png 768w\" sizes=\"(max-width: 1215px) 100vw, 1215px\" \/><\/a><\/p>\n<p>\u5982\u679c\u60a8\u662f\u4e00\u4f4dSpring\u5f00\u53d1\u8005\uff0c\u5e76\u4e14\u6b63\u5728\u7f16\u5199Spring Boot\u76f8\u5173\u7684\u7a0b\u5e8f\uff0c\u60a8\u4e5f\u53ef\u4ee5\u4e0b\u8f7d\u5e76\u5b89\u88c5<a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=Pivotal.vscode-boot-dev-pack\">Spring Boot\u63d2\u4ef6\u5305<\/a>\uff0c\u83b7\u5f97\u4e0eSpring Boot\u6709\u5173\u7684\u4e13\u5c5e\u5f00\u53d1\u4f53\u9a8c<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/10\/spring.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-864\" src=\"https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/10\/spring.png\" alt=\"Spring boot extension pack\" width=\"1221\" height=\"224\" srcset=\"https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/10\/spring.png 1221w, https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/10\/spring-300x55.png 300w, https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/10\/spring-1024x188.png 1024w, https:\/\/devblogs.microsoft.com\/java-ch\/wp-content\/uploads\/sites\/59\/2022\/10\/spring-768x141.png 768w\" sizes=\"(max-width: 1221px) 100vw, 1221px\" \/><\/a><\/p>\n<h4><strong style=\"color: inherit; font-family: inherit; font-size: 1.5rem; text-align: var(--bs-body-text-align);\"><span class=\"\">\u53cd\u9988\u4e0e\u5efa\u8bae<\/span><\/strong><\/h4>\n<p class=\"\">2023 \u5e74\uff0cVisual Studio Code \u4e0a\u7684 Java \u4f1a\u6709\u5f88\u591a\u6fc0\u52a8\u4eba\u5fc3\u7684\u66f4\u65b0\uff0c\u4e00\u5982\u65e2\u5f80\uff0c\u60a8\u7684\u53cd\u9988\u548c\u5efa\u8bae\u5bf9\u6211\u4eec\u975e\u5e38\u91cd\u8981\uff0c\u5c06\u6709\u52a9\u4e8e\u6211\u4eec\u672a\u6765\u7684\u4ea7\u54c1\u5851\u9020\u3002\u6709\u51e0\u79cd\u65b9\u6cd5\u53ef\u4ee5\u7ed9\u6211\u4eec\u7559\u4e0b\u53cd\u9988<\/p>\n<ul>\n<li><a href=\"https:\/\/www.research.net\/r\/vscodejava?lang=zh\" target=\"_blank\" rel=\"noopener\">\u586b\u5199\u4e2d\u6587\u95ee\u5377<\/a><\/li>\n<li class=\"\">\u5728\u8fd9\u4e2a\u5e16\u5b50\u4e0b\u7559\u8a00<\/li>\n<li class=\"\">\u5728\u6211\u4eec\u7684GitHub repo\u4e0a<a href=\"https:\/\/github.com\/microsoft\/vscode-java-pack\/issues\/new\/choose\" target=\"_blank\" rel=\"noopener\">\u521b\u5efaIssue<\/a><\/li>\n<li>\u53d1\u9001\u7535\u5b50\u90ae\u4ef6\u5230<a href=\"mailto:vscjfeedback@microsoft.com\">vscjfeedback@microsoft.com<\/a><\/li>\n<\/ul>\n<h4 id=\"try-it-out\"><strong>\u8d44\u6e90<\/strong><\/h4>\n<p>\u4ee5\u4e0b\u94fe\u63a5\u548c\u8d44\u6e90\u80fd\u5e2e\u52a9\u60a8\u66f4\u597d\u5730\u4e86\u89e3Java on Visual Studio Code\u7684\u76f8\u5173\u4fe1\u606f<\/p>\n<ul>\n<li class=\"\">\u4e86\u89e3<a href=\"https:\/\/code.visualstudio.com\/docs\/languages\/java\" target=\"_blank\" rel=\"noopener\">\u66f4\u591a Visual Studio Code\u4e0aJava<\/a>\u7684\u66f4\u591a\u4fe1\u606f<\/li>\n<li class=\"\"><span class=\"goog-text-highlight\">\u9010\u6b65\u63a2\u7d22<\/span><a href=\"https:\/\/code.visualstudio.com\/docs\/java\/java-tutorial\" target=\"_blank\" rel=\"noopener noreferrer\"><span class=\"goog-text-highlight\">\u6709\u5173Visual Studio Code\u7684Java\u6559\u7a0b<\/span><\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u5927\u5bb6\u597d\uff0c\u6b22\u8fce\u6765\u5230 Visual Studio Code for Java \u7684 8 \u6708\u66f4\u65b0\uff01\u5728\u8fd9\u7bc7\u535a\u5ba2\u4e2d\uff0c\u6211\u4eec\u5c06\u4e3a\u60a8\u63d0\u4f9b\u6709\u5173\u53cd\u7f16\u8bd1\u5668\u652f\u6301\u7684\u66f4\u591a\u6539\u8fdb\u3002\u6b64\u5916\uff0c\u6211\u4eec\u5c06\u5c55\u793a\u5982\u4f55\u521b\u5efa\u6ca1\u6709\u539f\u578b\u7684 Maven \u9879\u76ee\u4ee5\u53ca\u4e00\u9879\u91cd\u8981\u9519\u8bef\u4fee\u590d\u3002\u8ba9\u6211\u4eec\u5f00\u59cb\u5427\uff01 \u66f4\u591a\u53cd\u7f16\u8bd1\u5668\u652f\u6301\u6539\u8fdb \u4e0a\u4e00\u7bc7\u535a\u5ba2\u4e2d\u5c06\u5f3a\u5927\u7684Fernflower\u53cd\u7f16\u8bd1\u5668\u5f15\u5165\u6211\u4eec\u7684\u63d2\u4ef6\u65f6\uff0c\u6211\u4eec\u6536\u5230\u4e86\u6765\u81ea\u793e\u533a\u7684\u826f\u597d\u53cd\u9988\u3002\u4e0d\u8fc7\uff0c\u6839\u636e\u76ee\u524d\u7684\u4f53\u9a8c\uff0c\u6211\u4eec\u4ecd\u7136\u53ef\u4ee5\u505a\u4e86\u4e00\u4e9b\u6539\u8fdb\u3002\u6211\u4eec\u4e3b\u8981\u8986\u76d6\u4e86\u5bf9\u4e24\u4e2a\u4e3b\u8981\u6848\u4f8b\u7684\u652f\u6301\uff1a \u6848\u4f8b\u4e00\uff1a\u5141\u8bb8\u5f00\u53d1\u8005\u5728\u53cd\u7f16\u8bd1\u6e90\u7801\u548c\u539f\u59cb\u4e0b\u8f7d\u6e90\u7801\u4e2d\u5207\u6362 \u6b64\u529f\u80fd\u5c06\u5141\u8bb8\u5f00\u53d1\u4eba\u5458\u901a\u8fc7 Visual Studio Code \u7684\u5f39\u51fa\u7a97\u53e3\u5728\u53cd\u7f16\u8bd1\u7684\u6e90\u4ee3\u7801\u548c\u4e0b\u8f7d\u7684\u6e90\u4ee3\u7801\u4e4b\u95f4\u5207\u6362\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002 \u6848\u4f8b2\uff1a\u652f\u6301\u201cAttach Source\u201d\u64cd\u4f5c\uff0c\u4ee5\u4fbf\u5f00\u53d1\u8005\u53ef\u4ee5\u5728\u9700\u8981\u65f6\u9644\u5c5e\u539f\u59cb\u6e90\u4ee3\u7801\u3002 \u6709\u65f6\uff0c\u5f00\u53d1\u8005\u60f3\u8981\u9644\u5c5e\u539f\u59cb\u6e90\u4ee3\u7801\u800c\u4e0d\u662f\u53cd\u7f16\u8bd1\u7684\u4ee3\u7801\uff0c\u5e76\u8c03\u51fa\u4e0a\u4e0b\u6587\u83dc\u5355\u5e76\u5355\u51fb\u201cAttach Source\u201d\uff0c\u5f00\u53d1\u8005\u53ef\u4ee5\u8f7b\u677e\u5730\u505a\u5230\u8fd9\u4e00\u70b9\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002 \u6211\u4eec\u5e0c\u671b\u901a\u8fc7\u7528\u6237\u4f53\u9a8c\u6539\u8fdb\uff0c\u5f00\u53d1\u8005\u5c06\u80fd\u66f4\u9ad8\u6548\u5730\u4f7f\u7528\u53cd\u7f16\u8bd1\u5668\u7684\u76f8\u5173\u529f\u80fd\u3002 \u521b\u5efa\u6ca1\u6709 Archetype \u7684 Maven \u9879\u76ee \u9664\u4e86\u53cd\u7f16\u8bd1\u5668\u4f53\u9a8c\u6539\u8fdb\u4e4b\u5916\uff0c\u6211\u4eec\u8fd8\u5bf9 Maven for Java \u63d2\u4ef6\u589e\u52a0\u4e86\u65b0\u529f\u80fd\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u5f00\u53d1\u8005\u53ea\u60f3\u5feb\u901f\u521b\u5efa\u4e00\u4e2a\u6ca1\u6709\u4efb\u4f55\u539f\u578b\u7684 Maven \u9879\u76ee\uff0c\u4f8b\u5982 Hello World \u7a0b\u5e8f\u3002\u6211\u4eec\u6700\u8fd1\u53d1\u5e03\u7684\u7248\u672c\u4e2d\u542f\u7528\u4e86\u6b64\u5de5\u4f5c\u6d41\u7a0b\u3002\u4f7f\u7528\u63d2\u4ef6\u521b\u5efa Maven \u9879\u76ee\u65f6\uff0c\u5f00\u53d1\u4eba\u5458\u53ea\u9700\u4ece\u4e0b\u62c9\u5217\u8868\u4e2d\u9009\u62e9\u201cNo Archetype\u201d\uff0c\u51e0\u79d2\u949f\u5185\u5c31\u4f1a\u521b\u5efa\u4e00\u4e2a\u57fa\u672c\u9879\u76ee\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002 \u9519\u8bef\u4fee\u590d\uff1a\u4e0d\u540c\u6b65\u7684\u4ee3\u7801\u9ad8\u4eae \u9664\u4e86\u4e0a\u9762\u7684\u66f4\u65b0\u4e4b\u5916\uff0c\u6211\u4eec\u6700\u8fd1\u4ece\u7528\u6237\u53cd\u9988\u4e2d\u770b\u5230\uff0c\u6211\u4eec\u7684\u8bed\u4e49\u9ad8\u4eae\u663e\u793a\u6709\u65f6\u4f1a\u4e0d\u540c\u6b65\uff0c\u4ece\u800c\u5728\u9605\u8bfb\u548c\u952e\u5165\u4ee3\u7801\u65f6\u9020\u6210\u95ee\u9898\u3002\u6211\u4eec\u82b1\u4e86\u4e00\u4e9b\u65f6\u95f4\u6765\u8c03\u67e5\u6b64\u95ee\u9898\u5e76\u4fee\u590d\u4e86\u8be5\u95ee\u9898\u3002\u4ee5\u4e0b\u662f\u89e3\u51b3\u8fd9\u4e9b\u95ee\u9898\u7684 PR\uff1a Fix wrong semantic highlighting due to out-of-date AST being used. [&hellip;]<\/p>\n","protected":false},"author":31999,"featured_media":1138,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2,1,4,3],"tags":[],"class_list":["post-1127","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","category-java-ch","category-open-source","category-visual-studio-code"],"acf":[],"blog_post_summary":"<p>\u5927\u5bb6\u597d\uff0c\u6b22\u8fce\u6765\u5230 Visual Studio Code for Java \u7684 8 \u6708\u66f4\u65b0\uff01\u5728\u8fd9\u7bc7\u535a\u5ba2\u4e2d\uff0c\u6211\u4eec\u5c06\u4e3a\u60a8\u63d0\u4f9b\u6709\u5173\u53cd\u7f16\u8bd1\u5668\u652f\u6301\u7684\u66f4\u591a\u6539\u8fdb\u3002\u6b64\u5916\uff0c\u6211\u4eec\u5c06\u5c55\u793a\u5982\u4f55\u521b\u5efa\u6ca1\u6709\u539f\u578b\u7684 Maven \u9879\u76ee\u4ee5\u53ca\u4e00\u9879\u91cd\u8981\u9519\u8bef\u4fee\u590d\u3002\u8ba9\u6211\u4eec\u5f00\u59cb\u5427\uff01 \u66f4\u591a\u53cd\u7f16\u8bd1\u5668\u652f\u6301\u6539\u8fdb \u4e0a\u4e00\u7bc7\u535a\u5ba2\u4e2d\u5c06\u5f3a\u5927\u7684Fernflower\u53cd\u7f16\u8bd1\u5668\u5f15\u5165\u6211\u4eec\u7684\u63d2\u4ef6\u65f6\uff0c\u6211\u4eec\u6536\u5230\u4e86\u6765\u81ea\u793e\u533a\u7684\u826f\u597d\u53cd\u9988\u3002\u4e0d\u8fc7\uff0c\u6839\u636e\u76ee\u524d\u7684\u4f53\u9a8c\uff0c\u6211\u4eec\u4ecd\u7136\u53ef\u4ee5\u505a\u4e86\u4e00\u4e9b\u6539\u8fdb\u3002\u6211\u4eec\u4e3b\u8981\u8986\u76d6\u4e86\u5bf9\u4e24\u4e2a\u4e3b\u8981\u6848\u4f8b\u7684\u652f\u6301\uff1a \u6848\u4f8b\u4e00\uff1a\u5141\u8bb8\u5f00\u53d1\u8005\u5728\u53cd\u7f16\u8bd1\u6e90\u7801\u548c\u539f\u59cb\u4e0b\u8f7d\u6e90\u7801\u4e2d\u5207\u6362 \u6b64\u529f\u80fd\u5c06\u5141\u8bb8\u5f00\u53d1\u4eba\u5458\u901a\u8fc7 Visual Studio Code \u7684\u5f39\u51fa\u7a97\u53e3\u5728\u53cd\u7f16\u8bd1\u7684\u6e90\u4ee3\u7801\u548c\u4e0b\u8f7d\u7684\u6e90\u4ee3\u7801\u4e4b\u95f4\u5207\u6362\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002 \u6848\u4f8b2\uff1a\u652f\u6301\u201cAttach Source\u201d\u64cd\u4f5c\uff0c\u4ee5\u4fbf\u5f00\u53d1\u8005\u53ef\u4ee5\u5728\u9700\u8981\u65f6\u9644\u5c5e\u539f\u59cb\u6e90\u4ee3\u7801\u3002 \u6709\u65f6\uff0c\u5f00\u53d1\u8005\u60f3\u8981\u9644\u5c5e\u539f\u59cb\u6e90\u4ee3\u7801\u800c\u4e0d\u662f\u53cd\u7f16\u8bd1\u7684\u4ee3\u7801\uff0c\u5e76\u8c03\u51fa\u4e0a\u4e0b\u6587\u83dc\u5355\u5e76\u5355\u51fb\u201cAttach Source\u201d\uff0c\u5f00\u53d1\u8005\u53ef\u4ee5\u8f7b\u677e\u5730\u505a\u5230\u8fd9\u4e00\u70b9\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002 \u6211\u4eec\u5e0c\u671b\u901a\u8fc7\u7528\u6237\u4f53\u9a8c\u6539\u8fdb\uff0c\u5f00\u53d1\u8005\u5c06\u80fd\u66f4\u9ad8\u6548\u5730\u4f7f\u7528\u53cd\u7f16\u8bd1\u5668\u7684\u76f8\u5173\u529f\u80fd\u3002 \u521b\u5efa\u6ca1\u6709 Archetype \u7684 Maven \u9879\u76ee \u9664\u4e86\u53cd\u7f16\u8bd1\u5668\u4f53\u9a8c\u6539\u8fdb\u4e4b\u5916\uff0c\u6211\u4eec\u8fd8\u5bf9 Maven for Java \u63d2\u4ef6\u589e\u52a0\u4e86\u65b0\u529f\u80fd\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u5f00\u53d1\u8005\u53ea\u60f3\u5feb\u901f\u521b\u5efa\u4e00\u4e2a\u6ca1\u6709\u4efb\u4f55\u539f\u578b\u7684 Maven \u9879\u76ee\uff0c\u4f8b\u5982 Hello World \u7a0b\u5e8f\u3002\u6211\u4eec\u6700\u8fd1\u53d1\u5e03\u7684\u7248\u672c\u4e2d\u542f\u7528\u4e86\u6b64\u5de5\u4f5c\u6d41\u7a0b\u3002\u4f7f\u7528\u63d2\u4ef6\u521b\u5efa Maven \u9879\u76ee\u65f6\uff0c\u5f00\u53d1\u4eba\u5458\u53ea\u9700\u4ece\u4e0b\u62c9\u5217\u8868\u4e2d\u9009\u62e9\u201cNo Archetype\u201d\uff0c\u51e0\u79d2\u949f\u5185\u5c31\u4f1a\u521b\u5efa\u4e00\u4e2a\u57fa\u672c\u9879\u76ee\u3002\u8fd9\u662f\u4e00\u4e2a\u6f14\u793a\u3002 \u9519\u8bef\u4fee\u590d\uff1a\u4e0d\u540c\u6b65\u7684\u4ee3\u7801\u9ad8\u4eae \u9664\u4e86\u4e0a\u9762\u7684\u66f4\u65b0\u4e4b\u5916\uff0c\u6211\u4eec\u6700\u8fd1\u4ece\u7528\u6237\u53cd\u9988\u4e2d\u770b\u5230\uff0c\u6211\u4eec\u7684\u8bed\u4e49\u9ad8\u4eae\u663e\u793a\u6709\u65f6\u4f1a\u4e0d\u540c\u6b65\uff0c\u4ece\u800c\u5728\u9605\u8bfb\u548c\u952e\u5165\u4ee3\u7801\u65f6\u9020\u6210\u95ee\u9898\u3002\u6211\u4eec\u82b1\u4e86\u4e00\u4e9b\u65f6\u95f4\u6765\u8c03\u67e5\u6b64\u95ee\u9898\u5e76\u4fee\u590d\u4e86\u8be5\u95ee\u9898\u3002\u4ee5\u4e0b\u662f\u89e3\u51b3\u8fd9\u4e9b\u95ee\u9898\u7684 PR\uff1a Fix wrong semantic highlighting due to out-of-date AST being used. [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/posts\/1127","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/users\/31999"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/comments?post=1127"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/posts\/1127\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/media\/1138"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/media?parent=1127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/categories?post=1127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java-ch\/wp-json\/wp\/v2\/tags?post=1127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}