Este artigo apresenta principalmente a construção, operação e embalagem de projetos multimódulos de troca+Maven. É compartilhado com você. Os detalhes são os seguintes:
Ferramentas usadas pelo projeto:
Diretório do projeto:
1. Crie um projeto de trampolim usando a idéia: arquivo -> novo -> Projeto O nome do projeto é Springboot -Multi
2. Exclua o diretório SRC no projeto e altere o método de embalagem do projeto em pom.xml para pom, como segue:
<GrupidId> com.example </frugiD> <TRAFACTID> Springboot-multi </stifactId> <versão> 0.0.1-snapshot </versão> <!-Alterar para POM-> <bataging> pom </catching>
3. Crie um submódulo do projeto Springboot-Multi, clique com o botão direito do mouse no projeto e selecione: Novo-> Módulo.
4. Depois de criar quatro submódulos, exclua todos os arquivos no SRC/Main/Java e SRC/Main/Java no submodule (pule isso se nenhum arquivo for ignorado) e apenas retenha a classe de inicialização principal do submódulo da Web.
5. Projeto principal Pom.xml (Observe se a tag <Dodules> especifica um submodule)
<ModelVersion> 4.0.0 </modelVersion> <puperid> com.example </groupId> <TRARFACTID> Springboot-multi </stutifactId> <versão> 0.0.1-snapshot </versão> <!-Alterar para POM-> <backaging> pom </packaging> <name> SpringBoot <! <Module> web </module> <podule> Serviço </module> <odule> dao </module> <Dodule> entidade </module> </modules> <air> <puerpid> org.springframework.boot </groupid> <stifactId> spring-boot-starter-parent </artefactid> Lookup Parent de Repository-> </axer> <Properts> <Project.build.sourceEncoding> utf-8 </project.build.sourcencoding> <projeto.reporting.outputEncoding> utf-8 </project.reporting.outputoding> <Java.version> 1.8 </project.reporting.outputoding> <Ependency> <PuerpId> org.springframework.boot </frugiD> <ArtifactId> Spring-boot-starter-web </artifactId> </dependency> </dependências> <!-Especifique usando maven-package-> <bilt> <flugins> <flugin> <plupId> ORGACTACHAGEM.MAVEN-> <bilt> <flugins> <lamp> </ArtifactId> <Versão> 3.1 </versão <figuration> <somer> $ {java.version} </sorped> </Target> $ {java.version} </Target> </configuration> </ngin> <broup> <brugiDiD> ou. <TRAFACTID> maven-surefire-plugin </stifactId> <versão> 2.19.1 </version> <figuration> <skipptests> true </skipptests> <!-Desligue os testes da unidade por padrão-> </figuration> </flugin> <//Plugins> </build> 6. Web submodule pom.xml (depende do serviço, DAO, Submodule da entidade)
<ModelVersion> 4.0.0 </modelVersion> <puriFactId> com.example </groupid> <stifactId> web </artifactId> <versão> 0.0.1-snapshot </sipers> <batyaging> jar </packaging> <name> web </name> <name> Projeto Demons para Spring Boot </creption> <verlid> <roumind> <gougd> <name> web </name> <name> Projeto Demo para a primavera </cription> <Grupo> <Grupo. <artifactId>springboot-multi</artifactId> <version>0.0.1-SNAPSHOT</version> <relativePath>../pom.xml</relativePath> </parent> <dependencies> <dependency> <groupId>com.example</groupId> <artifactId>service</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> <dependency> <GrupId> com.example </frupId> <TRAFACTID> DAO </ArtifactId> <versão> 0.0.1-snapshot </version> </dependency> <pendency> <puperid> com.example </groupId> <stifactId> springs a prosques </versão </versão </swrings> patrocated </springs </springerspatid> patrodensenes </springs </swritId> <sictId> patrocated <sworkspatid> <bloath> </springs depends </groupid> </versão </swrings> patcation </springensensens> patrocatid <swork-swergy> <blowerms-! Starter-> <built> <flugins> <lugin> <puperid> org.springframework.boot </frugiD> <ArtifactId> Spring-boot-maven-plugin </artifactId> <figuration> <!-Especifique a classe principal como a entrada exclusiva global-> <-malaSlass> com.exemple.weBeplation <! </frifiguration> <Executions> <Execution> <tecles> <Goal> reembalagem </as Goal> <!-Você pode empacotar todas as dependências no pacote de jar gerado-> </metas> </secution> </execuções> </plugin> </plugins> </fruct>
7. Submodule de serviço pom.xml (depende de DAO e submódulos de entidade)
<ModelVersion> 4.0.0 </modelVersion> <puriFactId> com.example </proupid> <TRAFACTID> Serviço </starifactId> <Versão> 0.0.1-snapshot </sipers> <batyaging> jar </packaging> <name> service </name> <name> Projeto Demo para Spring Boot </ctrule> <verlid> <rouminid> <oumId> <name> Service </name> <Descrição> Demons para a primavera </ctring> <romid> <rouminid> com. <artifactId>springboot-multi</artifactId> <version>0.0.1-SNAPSHOT</version> <relativePath>../pom.xml</relativePath> </parent> <dependencies> <dependency> <groupId>com.example</groupId> <artifactId>dao</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> <dependency> <PuerpId> com.example </foupid> <stifactId> entidade </artifactId> <versão> 0.0.1-snapshot </sipers> </dependency> </dependency> </dependency>
8. Dao submodule pom.xml (depende do submodule da entidade)
<modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>dao</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>dao</name> <description>Demo project for Spring Boot</description> <parent> <groupId>com.example</groupId> <artifactId>springboot-multi</artifactId> <version>0.0.1-SNAPSHOT</version> <relativePath>../pom.xml</relativePath> </parent> <dependencies> <dependency> <groupId>com.example</groupId> <artifactId>entity</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> </dependencies>
9. Submódulo de entidade
<modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>entity</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>entity</name> <description>Demo project for Spring Boot</description> <parent> <groupId>com.example</groupId> <TRATIFACTID> Springboot-multi </sutifactId> <versão> 0.0.1-snapshot </version> <relityPath> ../ pom.xml </relativepath> </axer>
10. O que você precisa prestar atenção no arquivo pom.xml é:
11. Classe de inicialização do aplicativo de submodule da web:
@Restcontroller @springbootapplication public class Application {public static void main (string [] args) {springapplication.run (webApplication.class, args); } @ReQuestMapping (value = "/teste", método = requestMethod.get) public String test () {return "Test Sucem"; }}12. Execute o método principal para iniciar o projeto, visite localhost: 8080/teste, e a página a seguir parece indicar que o projeto é construído com sucesso:
13. Comando de embalagem do projeto: MVN Clean Package ou use a interface gráfica da barra de ferramentas à direita para embalar:
14. Log de sucesso da embalagem:
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.