美文网首页
IDEA打包项目到服务器发布

IDEA打包项目到服务器发布

作者: 夏臻Rock | 来源:发表于2017-12-05 20:19 被阅读0次

    系统初步完成后,需要把项目打包放到甲方的服务器上上线以供他们使用。这时候,就需要把自己的程序打包好,然后发布出去。

    首先,修改war exploded中的相应设置(平常跑程序时,tomcat中fix的就是这个war exploded):

    原本是这样的: image.png
    修改为:
    image.png

    1.将type修改为archive;
    2.输出路径(output directory)可以修改为桌面,这样方便找到war包,当然也可以不改~;
    3.勾上“include in project build” 这样在构建(build)项目的时候会自动打包。
    然后点击“apply”和“ok”.

    然后开始打包:


    image.png

    选择:


    image.png
    这样就可以在你的output directory(我的是在桌面)下找到打包好的.war文件。war包文件可以修改名称,最好不要有空格。

    然后将war包文件传到服务器上(我用的是teamviewer连接的自己的电脑和服务器主机),最好先将服务器的tomcat停止,然后将war包拷贝到服务器的tomcat->webapps下面,启动tomcat,会自动解压缩,同目录下出现和war包同名的文件夹,这时候,在服务器访问localhost:8080/**(项目名)*即可访问项目 。

    如上,是一般的操作流程,但是我实际操作的时候!
    404 not Found,让人崩溃!
    仔细检查后,发现是项目进行跳转后的访问路径上始终少了一个项目名称,但是如果手动加上项目名称就可以访问到相应的页面。(例如,首页是登录页面,跳转到的路径是localhost:8080/admin/login,这样是404,但是如果手动输入localhost:8080/项目名/admin/login就可访问到登录页面,然而,点击进行登录的时候也是不成功的,因为登录跳转的方法也少了一个项目名。)
    多种尝试后,终于攻破难关,解决方法:

    1.在tomcat的安装目录下的conf文件夹中找到server.xml文件:

    C:\Program Files\Apache Software Foundation\apache-tomcat-7.0.82\conf\server.xml,在其中的<Host>...</Host>标签内加上:

    <Context docBase="C:\Program Files\Apache Software Foundation\apache-tomcat-7.0.82\webapps\项目文件夹名" path="/" reloadable="true" /> 
    

    这样设置后,访问时可以不写项目名,直接用:localhost:8080/来访问。

    网上基本都是这种方法,但是我尝试了,还是不行,这就让人很绝望了!!!

    2.这一点是自己摸索出来的,虽然还没弄明白原因,但是亲测有效!

    image.png
    打包的时候,可以看到有个META-INF文件夹下.MF文件,不知道这个文件是做什么的,不过在项目刚从git上拉去下来的时候,一般是没有的,而且看这个文件的存放位置是在项目的target文件夹下,个人推断这个文件和tomcat构建文件有关,事实就是,打包后(或者打包前)把这个文件夹及其下的.MF文件删除掉就可以了!
    war包被tomcat解压后的文件夹中删掉MET-INF文件夹.png

    通过上述两个步骤,重新启动tomcat,成功实现服务器的部署!

    服务器再设置一下外网访问(开放端口即可,方法自行根据系统百度,百度上这个还是挺靠谱的),就可以实现真正的网站发布了!

    相关文章

      网友评论

          本文标题:IDEA打包项目到服务器发布

          本文链接:https://www.haomeiwen.com/subject/xpvcixtx.html