В чем разница между src / main / java и src в Springsource Tool - PullRequest
4 голосов
/ 01 июня 2011

Я учусь использовать Springsource Tool Suite (STS) и среду Spring для разработки.Я испытываю Amazon AWS SDK для затмения и решил установить его в STS.Когда я следую за созданием нового проекта AWS, он помещает файл .java в src вместо src / main / java, а когда я пытаюсь его создать, он говорит:

«Основного нет» или что-то в этом роде.

Но когда я перемещаю AwsConsoleApp.java и AwsCredentials.properties в src / main / java, то (пакет по умолчанию) я могу запустить файл как приложение Java.Вопрос в том, в чем разница между src/main/java -> пакетом по умолчанию и src -> main.Я приложил изображение, чтобы уточнить вещи:

Project_Explorer_View

1 Ответ

5 голосов
/ 02 июня 2011

Ответ:

Каждый проект Java в Eclipse (и в том числе STS) имеет связанный путь сборки, где указывается, какие папки в проекте содержат классы Java.Таким образом, разница между src/ и src/main/java заключается в том, что src/main/java настроен как папка, содержащая классы Java (или исходную папку в терминологии Eclipse), тогда как папка src/ просто содержит исходную папку.

Дополнительную информацию можно найти в Справка Eclipse .

Я не уверен, что привело к тому, что ваши классы Java оказались в неправильной папке, но это означает, что они не находятся впуть к классам проекта.Поэтому, когда вы запускаете приложение как приложение Java, оно жалуется, что не может найти метод main() (который является точкой входа по умолчанию для любого приложения Java).

Все становится на свои места, когда вы перемещаете свои классыв пакете по умолчанию в src/main/java: Eclipse находит ваши классы Java и метод main().

...