如何将 Java Web 应用程序项目从 Eclipse 部署到实时 Tomcat 服务器?
Posted
技术标签:
【中文标题】如何将 Java Web 应用程序项目从 Eclipse 部署到实时 Tomcat 服务器?【英文标题】:How to deploy Java web application project from Eclipse to live Tomcat server? 【发布时间】:2011-09-26 15:33:21 【问题描述】:我已经使用 html、Java Servlet 等开发了一个 Web 应用程序。在开发过程中,我使用 Tomcat 来部署它以进行测试。
现在我的开发已经完成,我想让它上线。为此,我们有实时服务器,但由于我是新手,所以我不知道如何在实时服务器上部署我的 Java Web 应用程序?
如果你知道答案,请帮助我?
我的项目结构
ProjectName
->src
->beanClass
->class1
->Class2
->easyServlet
->Servlet1
->Servlet2
->Servlet3
->easyTrans
->Class1
->Class2
->Class3
->Class4
->build
->WebContent
->META-INF
->MENIFEST.mf
->WEB-INF
->lib(contain javascript files)
->web.xml
->html1
->html2
->html3
->html4
->html5
我也在使用 mysql,所以我必须做些什么..
【问题讨论】:
是否有构建过程?您是否有权访问文件服务器的文件系统? @Mattan 使用“实时服务器”是指我们有服务器,我们在其上部署了我们的网站并且是实时的,我想将我的应用程序部署到同一台服务器 @cularis 抱歉,我无法理解您在说什么。我已经使用 EClipse IDE 开发了我的 Web 应用程序,并且我使用了 tomcat 6.0 作为运行时环境 【参考方案1】:在这里做一些假设。你需要
-
在生产服务器上运行的 tomcat 实例
对 tomcat 实例进行更改的权限
捆绑您的应用程序的战争文件
如果两者都有,那么您需要导航到 Tomcat 管理器页面并按照说明上传您的 war 文件。
【讨论】:
【参考方案2】:为此,我们有实时服务器,但由于我是新手,所以我不知道如何在实时服务器上部署我的 Java Web 应用程序?
我假设你的意思是,你有一个分配给服务器的公共 IP。现在你可以把tomcat安装到这个服务器上,并把tomcat端口开放给public,你就可以访问了。
现在构建你的 web 应用程序的 war 文件并将其放入 tomcat 的 web-apps 目录并启动服务器
【讨论】:
谢谢,你明白我的意思。但是如何构建我的应用程序的战争文件?我的应用程序也使用了 MySql,所以我必须做些什么。我正在使用 Eclipse 这在很大程度上取决于项目结构。如果您的项目是基于 ant 的,那么您可能已经配置了 ant 脚本 build.xml 来执行此操作。检查一下。 我的应用程序也使用了 MySql,所以我必须做些什么 你还需要在某个地方安装一个 mysql 服务器并让你的 web 应用程序能够与之通信 我将我的项目结构添加到我的队列中。我可以将mysql安装到我的服务器吗?可能是愚蠢的问题,但我是第一次这样做..【参考方案3】:您必须构建项目的 WAR。 你可以这样做
在 Eclipse 中:右键单击项目,单击“导出”,然后在对话框中选择 war 文件(并提及目标、名称和所有内容)通过 ant 使用 war 任务
ant 选项更好,因为当项目中有多个开发人员并且代码处于版本控制中时,自动获取项目(使用 ant)和构建战争更容易。 (你有版本控制,不是吗?)
但这更多的是操作差异(尽管很重要),但以任何一种方式产生的战争都是相同的
将战争部署到服务器
您可以手动将 war 文件复制到 $TOMCAT_HOME/webapps 目录(请参阅this article 上的“创建和部署 WAR 文件”部分)
您可以使用 Tomcat 6 "Manager" application。
更新 你说你也在使用 MySql。 MySql 应该安装在服务器上(它可以在同一台服务器上)并且应该更改配置(用户名、密码、服务器详细信息),以便应用程序连接到同一个数据库(我确定您不是在应用程序中对数据库详细信息和凭据进行硬编码并从某些配置中读取它们,这是必须更改的配置)
【讨论】:
谢谢,我想我得到了我需要的所有细节。现在最后一个问题是,当我使用 tomcat 开发我的应用程序时,是否有必要使用 tomcat 部署它?我不能使用 JBOSS 或 Apache 吗? @mahesh 您可以部署到 JBOSS(但不能部署到 Apache 服务器,如果这就是您所说的“Apache”的话)。Apache 服务器是一个简单的 HTTP 服务器,您不能拥有 Java托管在其上的 Web 应用程序(使用 servlet 等)。从 Tomcat 迁移应该不难,而且大多数情况下(对于简单的应用程序),您只需将 war 文件复制到 $JBOSS_HOME/server/default/deploy 目录即可。 @mahesh 但是,从长远来看,在一台服务器上开发并在另一台服务器上部署可能会导致问题,尤其是当您的应用程序增长时。初始迁移,从 tomcat 到 Jboss 是可以的,但之后你的开发也应该在 JBoss 上。 对于步骤1.创建War文件,eclipse右键和jar -cvf命令有区别吗?我问是因为这两种方法不会为我带来相同的部署。 ***.com/questions/37554449/…【参考方案4】:将战争部署到服务器
您可以手动将war文件复制到$TOMCAT_HOME/webapps
目录。
您可以使用 Tomcat 6“管理器”应用程序。
【讨论】:
以上是关于如何将 Java Web 应用程序项目从 Eclipse 部署到实时 Tomcat 服务器?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Java Web 应用程序项目从 Eclipse 部署到实时 Tomcat 服务器?
如何将数据从 Java 桌面/Swing 应用程序发送/传输到 Java Web 应用程序 [重复]
如何将自定义标头从 mvc 项目发送到 Web api 项目?
maven eclipse web 项目 问题 cannot change version of project facet dynamic web module to 3.0