使用 Spring+Hibernate 将 Maven 项目部署到 Tomcat

发布于 2024-12-11 13:50:54 字数 105 浏览 0 评论 0原文

我在 Eclipse 中使用 Maven 创建了一个 Spring 3 + Hibernate 项目。如何使用 Maven 将项目部署到 Tomcat 服务器。

非常感谢您的帮助。

I have created a Spring 3 + Hibernate project using Maven in Eclipse. How can I deploy my project to a Tomcat server using Maven.

Help is highly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

淡莣 2024-12-18 13:50:54

如果你添加Tomcat Maven插件,你所要做的就是

mvn tomcat:deploy

(添加服务器后到你的 Maven 配置)

If you add the Tomcat Maven plugin, all you have to do is

mvn tomcat:deploy

(after adding the server to your Maven configuration)

只涨不跌 2024-12-18 13:50:54

添加到 @Sean Patrick Floyd@Michael Borgwardt 已经建议的内容,如果您使用的是 Eclipse,您还可以按照此操作生成 .war 文件。

我假设该项目启用了 Maven,否则:

  • 右键单击您的项目 ->选择Maven->选择启用依赖关系管理。

生成.war

  • 右键单击您的项目 ->选择运行方式->选择 Maven 包。

这将在项目中的 target 目录中生成一个 war 文件。

部署到 Tomcat:

  • 将生成的 war 文件复制到 Tomcat 中的 webapps 目录。

Adding to what @Sean Patrick Floyd and @Michael Borgwardt had already suggested, If you are using Eclipse, you can also follow this to generate your .war file.

I assume the project is Maven enabled, Else:

  • Right click on your project -> Select Maven -> Select Enable Dependency Management.

To generate the .war:

  • Right click on your project -> Select Run As -> Select Maven Package.

This will generate a war file into target directory located in your project.

To deploy to Tomcat:

  • Copy the generated war file to your webapps directory in Tomcat.
白日梦 2024-12-18 13:50:54

足够简单:

在命令行上,通过

mvn clean install

mvn clean package

将生成的 war 文件上传到 Tomcat ">Tomcat 管理器界面。

您将在 ${basedir}/target/${artifactId}-${version}.war 中找到 war 文件

Easy enough:

On the command line, run

mvn clean install

or

mvn clean package

Upload the resulting war file to Tomcat via the Tomcat Manager Interface.

You'll find the war file at ${basedir}/target/${artifactId}-${version}.war

你是年少的欢喜 2024-12-18 13:50:54

我不确定你到底想做什么。如果你想做一些集成测试,因此需要将项目部署到服务器中,你也可以使用 maven货物

I am not sure what you exactly want to do. If you want to do some integration tests, and need therefore to deploy the project in the server, you can also use maven cargo.

红玫瑰 2024-12-18 13:50:54

我同意 Michael 的观点,你应该使用 Tomcat Maven 插件

首先,在你的 pom 中添加这些配置.xml:

<plugins>
<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.0-beta-1</version>
    <configuration>
        <server>local_tomcat</server>
        <url>http://hostname:port/manager/html</url>
        <username>user</username>
        <password>password</password>
    </configuration>
</plugin>
...
</plugins>

然后,您可以使用一个 maven 命令来部署您的网站:

mvn tomcat7:deploy

如果您需要先取消部署旧的部署,您可以使用:

http://user:password@hostname:port/manager/text/undeploy?path=/your-web-site-path

如果您使用旧版本的 tomcat,则略有不同。您应该参考 Tomcat Maven 插件文档

I agree with Michael, you should using Tomcat Maven plugin

First, adding those configures in you pom.xml:

<plugins>
<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.0-beta-1</version>
    <configuration>
        <server>local_tomcat</server>
        <url>http://hostname:port/manager/html</url>
        <username>user</username>
        <password>password</password>
    </configuration>
</plugin>
...
</plugins>

Then, you can deploy your web site with one maven command:

mvn tomcat7:deploy

If you need to undeploy the old deployment first, you can using :

http://user:password@hostname:port/manager/text/undeploy?path=/your-web-site-path

There is slight difference if you are using old version tomcat. You should refer Tomcat Maven plugin doc.

阳光下慵懒的猫 2024-12-18 13:50:54

您还可以使用 Apache Cargo,它比 Tomcat Maven 插件更通用。

以下是相关问题的答案:

https://stackoverflow.com/a/10936575/1017787

You could also use Apache Cargo, which is more general than the Tomcat Maven plugin.

Here is an answer to a related question:

https://stackoverflow.com/a/10936575/1017787

℡Ms空城旧梦 2024-12-18 13:50:54

您可以使用maven创建项目的war文件。然后你就可以将它部署到你的tomcat的webapps文件夹中。

You can create war file of project using maven. Then you can deploy it in the webapps folder of your tomcat.

半窗疏影 2024-12-18 13:50:54

您必须在工作区中编辑 server.xml:

<Server>
<Service>
    <Engine>
        <Host>
            <Context path="/<myproject>" docBase="<myproject>">
                <Resources className="org.apache.naming.resources.VirtualDirContext"
                    extraResourcePaths="/../<workspace>/<myproject>/src/main/webapp" />
                <Loader className="org.apache.catalina.loader.VirtualWebappLoader"
                    virtualClasspath="/../<workspace>/<myproject>/target/classes;/Users/<myuser>/.m2/repository/log4j/log4j/1.2.15/log4j-1.2.15.jar" />
                <JarScanner scanAllDirectories="true" />
            </Context>
        </Host>
    </Engine>
</Service>

因为,maven生成的项目结构是不一样的。它与 appfuse Web 应用程序一起使用。另外,您必须运行“mvn tomcat7:deploy”

You must be edit server.xml in your workspace:

<Server>
<Service>
    <Engine>
        <Host>
            <Context path="/<myproject>" docBase="<myproject>">
                <Resources className="org.apache.naming.resources.VirtualDirContext"
                    extraResourcePaths="/../<workspace>/<myproject>/src/main/webapp" />
                <Loader className="org.apache.catalina.loader.VirtualWebappLoader"
                    virtualClasspath="/../<workspace>/<myproject>/target/classes;/Users/<myuser>/.m2/repository/log4j/log4j/1.2.15/log4j-1.2.15.jar" />
                <JarScanner scanAllDirectories="true" />
            </Context>
        </Host>
    </Engine>
</Service>

Because, the project structure generate by maven is different. It work with appfuse web application. Also you must be run "mvn tomcat7:deploy"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文