Разработчики, использующие код Visual Studio для написания на Java, теперь могут использовать расширение Microsoft IntelliSense с поддержкой искусственного интеллекта. Расширение до сих пор было ограничено использованием с Python и C#.
IntelliCode идет дальше, чем старая функция IntelliSense, которая пытается угадать, что вы печатаете. Машинное обучение используется для того, чтобы функция понимала контекст кодирования на основе существующего кода проекта. Расширение показывает рекомендуемые варианты завершения кода в верхней части списка предложений, отмеченных звездочками. IntelliSense пыталась сделать что — то подобное, но часто приходила с широким спектром предложений, многие из которых были менее полезными, поэтому вам приходилось вручную работать с ними, чтобы найти то, что вы искали, или просто ввести его для себя.
Предложения в IntelliCode основаны на модели машинного обучения Azure, обученной на более чем 2000 репозиториях GitHub. Репо варьировались от фреймворков машинного обучения, через веб-фреймворки, до сценариев общего назначения. Модель машинного обучения завершена, поэтому надстройке VS, реализующей ее, не нужно ничего искать на GitHub или Azure. Расширение касается не только завершения оператора. IntelliCode предлагает наиболее подходящий API и дает рекомендации по наиболее подходящей перегрузке для этого API с учетом текущего контекста кода.
Наряду с поддержкой Java IntelliCode, в расширения Java для кода Visual Studio был добавлен ряд других улучшений. Отладчик для Java теперь использует объектив кода для более простого запуска программ Java и имеет страницу устранения распространенных ошибок. Он также поддерживает запуск без отладки и поддерживает точки входа.
Поддержка Tomcat была обновлена, что упростило работу с Apache Tomcat, реализацией сервлета Java с открытым исходным кодом, страницами JavaServer, языком выражений Java и технологиями Java WebSocket. Теперь вы можете щелкнуть правой кнопкой мыши на папке взорванной ВОЙНЫ, чтобы запустить ее на сервере Tomcat, а также отладить ее на сервере Tomcat.
Поддержка Maven также была улучшена, так что вы можете быстро повторно запустить команду maven из истории, с историческими командами, доступными из контекстного меню. Также добавлена поддержка запуска команд maven из палитры команд.
Расширение предлагает лучшую поддержку Java 9, 10 и 11. Интеграция с редактором лучше, и он поддерживает больше действий с кодом, включая возможность преобразования var в тип и наоборот, а также преобразования в лямбда-выражение.