От C ++ до Java - что такое Gradle - PullRequest
1 голос
/ 17 апреля 2020

Я несколько лет пишу на C ++, Python .., но сейчас я хотел бы выучить Java. Итак, я изучил основы, но я немного запутался в Java компиляторах. Так что же делает Gradle? Правильно, это компиляция моих Java файлов в файлы .class в байт-коде, которые могут быть интерпретированы напрямую или переданы в машинный код при запуске кода.

Но почему я должен использовать Gradle? Это виртуальная среда, как Venv в Pycharm?

В Intellij я могу выбирать, когда создаю новый проект, между проектом Java или проектом Gradle. Поэтому я немного запутался, как работает проект Java. Какой Java компилятор используется для обычного Java проекта?

В двух словах, я хочу знать, когда мне следует использовать Gradle или когда мне следует использовать стандартный Java Project, и как работает стандартный Java Project Java компилятор по сравнению с Gradle.

На мой взгляд, это похоже на сравнение между G ++ и CMake в C -Компиляторах. Это для базового c понимания правильного предположения?

Спасибо за вашу помощь новичку ie в Java Программирование; -)

Ответы [ 2 ]

2 голосов
/ 17 апреля 2020

В C ++ вы можете использовать компилятор командной строки (g ++ или cl), как при sh, и впоследствии запускать скомпилированное приложение. В Java вы можете сделать то же самое (скомпилировать класс с javac и запустить скомпилированные программы с java). Но по мере роста вашего проекта, когда вы импортируете больше зависимостей и библиотек, это может стать проблемой для управления всеми деталями компиляции. Таким образом, вы используете систему управления сборкой, такую ​​как CMake. CMake по-прежнему использует любой компилятор C ++, который у вас есть за кулисами, даже если он настраивает некоторые вещи для вас.

Как и C ++ и Cmake, Java предоставляет множество вариантов для более сложного управления сборкой и придерживается той же философии. Gradle - это одна система управления. Maven - еще один популярный выбор. Основное различие между этими системами и CMake заключается в том, что в отличие от CMake, где вы обычно загружаете, настраиваете и устанавливаете зависимости самостоятельно, Gradle и Maven сделают это за вас. Они все еще используют компилятор Java за кулисами, но автоматизируют множество задач для вас. Если вы создаете проект Java без Gradle или Maven, вам придется до некоторой степени самостоятельно загружать, устанавливать и настраивать зависимости - IntelliJ позаботится о некоторых аспектах этого.

0 голосов
/ 17 апреля 2020

Gradle - это универсальная система управления сборкой. Как и Cmake, он позволяет создавать различные задачи (например, задача сборки, очистка и т. Д. c.). Но Gradle также поддерживает автоматическую загрузку и настройку c зависимостей или других библиотек. Вы должны проверить это введение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...