Подтвердить что ты не робот

Какова структура каталога проекта для автономного приложения Java SE?

Какова стандартная структура каталога проектов автономного приложения Java SE (на основе командной строки)?

src папка будет содержать все мои файлы .java в правильно организованных пакетах. Помимо этого у меня есть папка bin, которая будет содержать мои файлы .class.

У меня есть файлы свойств и файлы конфигурации XML в моем проекте. В какой директории я должен разместить их? Должен ли я создать пакет с именем com.myproject.config и поместить в него все файлы конфигурации .xml?

Я хочу, чтобы зависимые банки были упакованы вместе с моим окончательным пакетом. Так что я должен создать папку (например, по имени lib), чтобы хранить все эти файлы .jar?

4b9b3361

Ответ 1

Я бы рекомендовал придерживаться стандартного Maven макета (а также использовать maven как инструмент сборки)

Производственные классы/ресурсы:

src/main/java
src/main/resources

Данные и классы тестов:

src/test/java
src/test/resources

Maven также может позаботиться о том, чтобы правильно упаковать ваше приложение со всеми необходимыми банками (ищите плагин сборки maven)

Ответ 2

Насколько я знаю, для Java нет такой вещи, как стандартная структура проекта. Однако различные инструменты и IDE (например, Eclipse) имеют стандартную структуру.

Maven, с помощью инструмента построения Java, с очень четко определенной (по умолчанию) структурой проекта. Там все исходные файлы Java помещаются в папку src/main/java, и все файлы ресурсов (например, ваши файлы конфигурации) помещаются в src/main/resources.

Вот очень быстрое введение в Maven, если вы еще этого не знаете: Maven через 5 минут


Что касается вашего вопроса об упаковке с зависимостями, здесь вырезано из одного из моих файлов MOM Maven, в котором используется Assembly Plugin для создания JAR файл со всеми зависимостями:

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
            <manifest>
                <mainClass>...</mainClass>
            </manifest>
        </archive>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Ответ 3

Обычно используемая структура выглядит следующим образом:

  • src - содержит все ваши исходные файлы и, возможно, следующее (может быть далеко от дерева папок):
    • resources - содержит ресурсы, такие как файлы свойств
    • config - все связанные с конфигурацией
  • lib - папка, содержащая ваши библиотеки, возможно, размещенные в отдельных подпапках
  • bin - содержит скомпилированные классы

Ответ 4

src/com.enterprise_name.project_name. Main.java(основной класс)

src/com.enterprise_name.project_name.model. (здесь все классы моделей)

src/com.enterprise_name.project_name.view. (здесь все классы просмотра, JFrame, Jdialog и т.д.)

src/com.enterprise_name.project_name.view.resources. (здесь все файлы и изображения, используемые в представлениях * note)

src/com.enterprise_name.project_name.controller. (здесь все классы контроллера)

lib/ (здесь все внешние библиотеки - не забудьте добавить путь сборки)

* note, если вам нужен файл ресурсов (xml, файл конфигурации и т.д.), создайте пакет .resources. в определенном месте, где вам нужно (модель, контроллер, просмотр)