我的公司想启动一个新的Angular项目,并被告知将Angular项目作为War File进行部署,因此可以将其上传到我们拥有的工件中,并且可以轻松地部署到Tomcat 8。
但是我对战争项目了解不多。在我看来,这是太多的开销,为什么要为Web客户端使用Java格式?
只需了解一下,后端Java代码是分开的,所以最终我的应用程序将仅包含JavaScript,HTML和CSS。
所以我用IntelliJ创建了一个空的Maven项目,创建了一个新文件夹,并在其中使用CLI创建了一个新的Angular项目。
这是我到目前为止在Angular项目文件夹中的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.test.maventest</groupId>
<artifactId>wartest</artifactId>
<version>1.0-SNAPSHOT</version>
<name>wartest</name>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<finalName>maventest</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.5</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<webResources>
<resource>
<directory>dist</directory>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>
</project>
据我了解,我需要在
中复制HTML等。target / WEB-INF / classes
文件夹,对吗?但是我的Maven文件不会这样做。它将在目标内部创建一个新文件夹,如下所示:
目标/最重要
在那里,我有一个META-INF和一个WEB-INF文件夹。
现在我要如何做到这一点,在我看来必须很容易。
答案 0 :(得分:0)
据我了解,我需要在
中复制HTML等。target / WEB-INF / classes
文件夹,对吗?
不,您不是。 Maven处理完成后,将自动生成目标文件夹。如果您运行命令,该文件夹也将被删除
mvn clean
此Web项目的文件夹结构是由maven创建的:
article on layout performance issues and layout thrashing
希望这会有所帮助。