2017-02-15 6 views
0

im пытается построить проект весеннего ботинка maven как файл войны для развертывания на сервере.Весенняя ботинок построена как война и включает внешний модуль

У меня есть второй проект «lib», который содержит pojo в базе данных и разделяется между несколькими проектами. Текущий проект, который я хочу построить как войну, но не представляется возможным установить <packaging>war</packaging> , когда имеется определенный модуль, он допускает только тип pom.

<modules> 
    <module>../lib</module> 
    </modules> 

Мой вопрос, как я могу построить проект как войну, сохраняя включение модуля?

ответ

0

Модули используются в исходной папке для определения ее дочернего элемента, а его packaging должен быть pom.

Вместо этого используйте зависимость, если вы хотите включить другой проект в свое приложение.

<dependency> 
    <groupId>lib.project.group.id</groupId> 
    <artifactId>lib</artifactId> 
    <version>lib.project.version</version> 
</dependency> 

Где

  • lib.project.group.id: идентификатор группы Lib проекта
  • Lib - Lib проекты артефакт ID
  • lib.project.version версия вашего Lib проекта

Примечание: сначала создайте проект библиотеки, прежде чем строить свой военный проект, иначе сборка завершится неудачно.

Чистый способ сделать это - создать родительский pom и определить как war_project, так и lib_project в качестве своих модулей и построить родительский pom, так как никакая зависимость не потерпит неудачу, и вы получите свою загруженную войну.

+0

я в конечном итоге удаление включения модуля и запуск maven установить в lib, то, как вы сказали. добавив его как зависимость. то после этого он будет строить как войну – user2168435

0

Вам нужен родительский POM, который имеет войну и банку:

<groupId>com.greg</groupId> 
    <artifactId>spring-boot</artifactId> 
    <version>0.1.0</version> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.5.1.RELEASE</version> 
    </parent> 

    <modules> 
     <module>jar-project</module> 
     <module>war-project</module> 
    </modules> 

В вашей войне проекта включают .jar файл в качестве зависимости:

<parent> 
    <groupId>com.greg</groupId> 
    <artifactId>spring-boot</artifactId> 
    <version>0.1.0</version> 
    </parent> 

    <artifactId>war-project</artifactId> 
    <packaging>war</packaging> 

    <dependencies> 
    <dependency> 
     <groupId>com.greg</groupId> 
     <artifactId>jar pfoject</artifactId> 
     <version>${project.version}</version> 
    </dependency> 
    </dependencies> 
Смежные вопросы