[英]how to integrate two projects in spring mvc(1 war and 1 jar)
Two Spring mvc web application for a project where one as internet and one as intranet.两个 Spring mvc Web 应用程序,用于一个项目,一个作为 Internet,一个作为 Intranet。 Both using few common packages and classes.两者都使用很少的通用包和类。 I want to separate the intranet part and take it as a jar file then deploy it with internet war file.我想把内网部分分开,把它当作一个jar文件,然后用internet war文件部署它。 idea is to use the jar file in multiple similar projects where intranet part can be reused.想法是在多个类似的项目中使用jar文件,这些项目可以重复使用内网部分。 Please suggest how to proceed with this approach.请建议如何继续使用这种方法。 Thanks谢谢
first create lib project which will have jar packaging, and both internet and intranet app will reuse code located in this project.首先创建将有 jar 包的 lib 项目,并且 Internet 和 Intranet 应用程序将重用位于该项目中的代码。
The pom.xml will looks following pom.xml 将如下所示
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.domain.foobar</groupId>
<artifactId>foobar-lib</artifactId>
<version>1.0.0</version>
<packaging>jar</packaging>
</project>
then generate internet portlet (with war packaging) for example然后生成 Internet portlet(带有战争包装),例如
mvn archetype:generate -DarchetypeGroupId=com.domain.foobar -DartifactId=foobar-internet -DarchetypeArtifactId=com.liferay.maven.archetypes:liferay-portlet-archetype -DarchetypeVersion=6.2.10.15 mvn archetype:generate -DarchetypeGroupId=com.domain.foobar -DartifactId=foobar-internet -DarchetypeArtifactId=com.liferay.maven.archetypes:liferay-portlet-archetype -DarchetypeVersion=6.2.10.15
and to pom.xml of internet project add并添加到 Internet 项目的 pom.xml
<dependency>
<groupId>com.domain.foobar</groupId>
<artifactId>foobar-lib</artifactId>
<version>1.0.0</version>
</dependency>
do the same for intranet portlet对 Intranet Portlet 执行相同操作
mvn archetype:generate -DarchetypeGroupId=com.domain.foobar -DartifactId=foobar-intranet -DarchetypeArtifactId=com.liferay.maven.archetypes:liferay-portlet-archetype -DarchetypeVersion=6.2.10.15 mvn archetype:generate -DarchetypeGroupId=com.domain.foobar -DartifactId=foobar-intranet -DarchetypeArtifactId=com.liferay.maven.archetypes:liferay-portlet-archetype -DarchetypeVersion=6.2.10.15
and to pom.xml of internet project add并添加到 Internet 项目的 pom.xml
<dependency>
<groupId>com.domain.foobar</groupId>
<artifactId>foobar-lib</artifactId>
<version>1.0.0</version>
</dependency>
Now both internet and intranet (war packaging) project sees code in lib (jar packaging) project.现在internet和intranet(war包)项目都在lib(jar包)项目中看到了代码。
So the architecture is所以架构是
I hope that I helped you becase your question wan't clear enough.我希望我能帮助你,因为你的问题还不够清楚。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.