精华内容
下载资源
问答
  • 主要介绍了idea打包war包部署到tomcat以及访问路径问题,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
  • idea将web项目打包成war...创建之后,output directory即为输出war包的路径。Name可以随意,之后点击绿色+,打开directory content 选择webapp目录,记得勾选include in project build     点击ok后,新...

    idea将web项目打包成war最重要的是配置atrificats。

    首先打开file -》 project structure

    创建之后,output directory即为输出war包的路径。Name可以随意,之后点击绿色+,打开directory content

    选择webapp目录,记得勾选include in project build

     

     

    点击ok后,新建一个配置

     

    选择artificats

     

    这样就算配置完成,点击run执行之后,就到前面的output directory设置的文件夹里找到war包就行了。war包放到tomcat的webapp目录下,再启动tomcat就能访问项目了。

    项目的访问地址是localhost:8080/你的war包名称/index

    在这里想说一下的是由于war包的名称决定了访问地址,所以当采用纯html+css+js写页面时,在页面的资源引用地址最好加上你的项目名称(即你的最终war包命名),例如引用js文件:

    <link rel="stylesheet" href="/layui/css/layui.css" media="all" />

    此时idea按住ctrl键加鼠标停留在文件路径上,会有可点击的提示。

    但是在项目部署到tomcat上时,war包相当于增加了一个文件夹,文件夹名为你的war包名称,这时按原来的引用是会提示找不到这个文件的,这时候,我们应该这么引用:

    <link rel="stylesheet" href="/war包名称/layui/css/layui.css" media="all" />

    当你的引用地址含有..时,比如:

    <script type="text/javascript" src="../../page/user/editUser.js"></script>

    应该这样修改:

    <script type="text/javascript" src="../../war包名称/backstage/page/user/editUser.js"></script>

    但是问题来了,这样配置的时候,部署到tomcat上能找到文件,但是本地idea开发启动tomcat调试之后,会找不到文件。这时候应该配置application context,启动之后就可以了。并且做到与部署到tomcat时的文件路径一致,不用在部署到tomcat上时,还要再修改前端页面的地址。(jsp可以不用考虑这个问题,因为jsp能获取根路径)。

     

     

    如果application context只是“/”的话,那么就相当于所有的文件放在tomcat的webapp下面,直接通过localhost:8080/文件就能访问。

    展开全文
  • springboot项目使用war包部署到tomcat (在IDEA中使用外部tomcat) 1.修改打包方式 默认为jar包,将打包方式修改为war 2.移除springboot中内嵌的tomcat 删除spring-boot-starter-web依赖中的节点内容 3.添加依赖 ...

    springboot项目使用war包部署到tomcat

    (在IDEA中使用外部tomcat)

    1.修改打包方式

    • 默认为jar包,将打包方式修改为war
      在这里插入图片描述

    2.移除springboot中内嵌的tomcat

    • 删除spring-boot-starter-web依赖中的节点内容
      在这里插入图片描述

    3.添加依赖

    • servlet-api依赖
      在这里插入图片描述
    • tomcat依赖
      在这里插入图片描述

    4.修改打包方式

    在这里插入图片描述

    5.修改启动类,重写初始化方法

    • 默认启动方法
      在这里插入图片描述
    • 修改为
      在这里插入图片描述

    6.打包部署

    • 使用maven工具,点击package打包
      在这里插入图片描述
      在这里插入图片描述

    • 打包完成后,在项目的target中生成
      在这里插入图片描述

    • 将war包拷贝到tomcat的webapps目录下
      在这里插入图片描述

    • bin目录下,点击startup.bat启动tomcat
      在这里插入图片描述

    • 自动弹出cmd
      在这里插入图片描述

    注:没有tomcat环境变量的话使用.bat方式启动会一闪而过,使用exe启动可正常运行

    在这里插入图片描述
    在这里插入图片描述

    在IDEA中使用tomcat启动

    1.在File-Settings中找到Application Servers

    在这里插入图片描述

    2.点击图中加号添加tomcat-server

    在这里插入图片描述

    • 选择tomcat安装路径
      在这里插入图片描述

    3.点击Edit Configurations

    在这里插入图片描述
    在左侧Templates中找到Tomcat-server
    在这里插入图片描述
    在这里插入图片描述

    • 选择local
      在这里插入图片描述
    • 在下拉框中选择
      在这里插入图片描述
    • 进入Deployment
      在这里插入图片描述
    • 点击加号,打开Artifact
      在这里插入图片描述
    • 选择.war
      在这里插入图片描述
    • 在下方修改项目名,或者使用默认
      在这里插入图片描述
    • 修改后会在Server中的URL自动变为修改路径
      在这里插入图片描述
    • 此处选择热部署,html改变后无需重新打包即可生效
      在这里插入图片描述
    • 配置好后生效,OK,就可以在这里直接启动了
      在这里插入图片描述
    • 启动成功,下方控制台显示输出信息
      在这里插入图片描述

    4.解决乱码问题

    • 在tomcat启动项中的VM options添加这句话,以UTF-8形式运行
      在这里插入图片描述
    • 显示正常
      在这里插入图片描述
    展开全文
  • IDEA打包war部署到tomcat 404错误(tomcat配置正确)此问题状况可能满足以下条件的1.本地使用gradle bootRun后访问地址正常 2.部署到tomcat后访问接口地址出现404错误 3.在tomcat项目中新建index.html可以访问解决...

    IDEA打包war部署到tomcat 404错误(tomcat配置正确)

    此问题状况可能满足以下条件的

    1.本地使用gradle bootRun后访问地址正常
    2.部署到tomcat后访问接口地址出现404错误
    3.在tomcat项目中新建index.html可以访问

    解决方案

    1.gradle首先确认满足以下条件

    
    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.8.RELEASE")
        }
    }
    
    apply plugin: 'war'
    apply plugin: 'org.springframework.boot'
    ...
    
    war {
        baseName = 'projectname'
        version =  '0.0.1'
    }
    
    repositories {
        mavenCentral()
        jcenter()
        maven { url "http://repo.spring.io/libs-snapshot" }
    }
    
    dependencies {
        compile("org.springframework.boot:spring-boot-starter-web")
    
        //注意打包war此处是providedRuntime,不是compile
        providedRuntime("org.springframework.boot:spring-boot-starter-tomcat")
    
        ...
    }
    

    2.Application.java文件需要修改成如下,用来告诉容器入口

    
    @SpringBootApplication
    public class Application extends SpringBootServletInitializer {
    
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(Application.class);
        }
    }
    

    之前我这边错误样例 如下,bootRun可以跑,但是tomcat就不行

    
    @SpringBootApplication
    public class Application {
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }
    

    参考

    https://stackoverflow.com/questions/25884010/gradle-spring-boot-project-not-working-in-tomcat-as-a-war

    展开全文
  • SpringBoot在Intellij Idea中使用gradle打成war包部署到Tomcat 导语:叶子写了一个SpringBoot在打成war包部署到Tomcat时,老是提示404错误,经过多次检查修正,终于可以运行在tomcat下了。 一、修改gradle.build文件...

    SpringBoot在Intellij Idea中使用gradle打成war包部署到Tomcat

    导语:叶子写了一个SpringBoot在打成war包部署到Tomcat时,老是提示404错误,经过多次检查修正,终于可以运行在tomcat下了。

    一、修改gradle.build文件的参数

    添加如下配置

    apply plugin: ‘war’

    修改依赖,将tomcat的依赖范围修改为providedRuntime

    dependencies {
    	implementation 'org.springframework.boot:spring-boot-starter-jdbc'
    	implementation 'org.springframework.boot:spring-boot-starter-web'
    	
    	//mybatis
    	implementation('com.baomidou:mybatis-plus-boot-starter:2.2.0')
     
    	//mybatis-plus 模板
    	implementation('org.apache.velocity:velocity-engine-core:2.0')
    	
    	//自定义jar包,包含了oracle的数据库的连接
    	implementation fileTree(dir:'libs',include:['*.jar'])
    	
    	
    	//将tomcat的依赖范围修改为providedRuntime
    	providedRuntime('org.springframework.boot:spring-boot-starter-tomcat')
    	
    	
     
    	implementation('org.projectlombok:lombok:1.18.4')
    	testImplementation 'org.springframework.boot:spring-boot-starter-test'
    }
    

    二、主类继承SpringBootServletInitializer,重写configure方法

    需要将你的主类Application.java改成下面的样子。

    package com.cddx.hx;
     
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.builder.SpringApplicationBuilder;
    import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
     
    @SpringBootApplication
    public class HxApplication extends SpringBootServletInitializer {
     
    	@Override
    	protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    		return application.sources(HxApplication.class);
    	}
     
    	public static void main(String[] args) {
    		SpringApplication.run(HxApplication.class, args);
    	}
     
    }
    
    

    HxApplication这个类名根据你的实际情况修改。

    三、修改src\main\resources\application.yml

    增加下面的配置,这个配置不是必须的,但是如果你的tomcat服务器上有多个springboot的项目在运行,如果不修改的话,就只能运行一个。

    #spring.jmx.enabled=false 可以在一个tomcat启动多个springboot项目
    spring:  
      jmx:
        enabled: false
    
    

    四、使用gradle build命令打War包

    打开Intellij Idea中的View -> Tool Windows -> Terminal ,在此窗口中直接运行命令。
    gradle build
    运行完成后,在项目的\build\libs目录中就会有一个 项目名称的war包,例如:

    hx-0.0.1-SNAPSHOT.war

    五、部署到Tomcat

    直接将你的war包上传到Tomcat下面的webapps目录中,如果在conf目录下的server.xml中的unpackWARs等于true,那么war会自动解压。

    autoDeploy等于true,那么会自动部署。

    <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true">
    

    在这里插入图片描述

    展开全文
  • idea中的springboot项目打包成war包部署到tomcat中一,前言:我们这个是前后端分离的项目,前段负责前端的页面,我们后端负责我们后端的接口,但是前后端是怎么结合在一起的呢那就是tomcat,按照我以前的思维是需要...
  • IDEA springboot打war包 1.将打包方式改成war 解决方法:pom.xml中改为 <packaging>war</packaging> 2. spirngboot内嵌tomcat,所以移除tomcat依赖,因为部署到linux中不能用内嵌tomcat,也有别的写法,...
  • 在项目中,有时我们会遇到需要打war包部署到tomcat上运行的情景。 1.创建一个springboot项目,最原始的目录结构: 2.在pom文件中添加以下代码:使用packaging标签指定打包的方式位war包,添加build标签,指定...
  • 这里做一下简单的记录,以便自己以后复习 一.修改pom.xml (1)打包方式修改成war ...(2)加入spring-boot-starter-web依赖,但是要去除其中的内嵌Tomcat 方法一: <dependencies> <dependency> &...
  • 最近在做项目过程中遇到了一个需求,就是SpringBoot项目在Idea中用gradle命令打成war包部署到Tomcat,关于这一问题在网上看了很多博客,内容有相同的地方,也有不同的地方,甚至也有冲突的地方,所以本人就简单的...
  • spring boot项目发布war包部署到tomcat

    千次阅读 2019-08-04 12:30:55
    我有个spring boot项目,在intellij idea里运行得好地地,结果发布成war包部署到tomcat里,报404,死活无法访问。 原因是,代码还少了点东西。在项目的启动类里,需要重载SpringBootServletInitializer.configure...
  • idea启动 springboot 能够正常访问,但是将 war包部署到tomcat却报404,如下图所示: 二、解决方案 在网上找了很多文章,大部分文章说启动类要继承SpringBootServletInitializer,并且重写configure。我的代码...
  • IDEA web项目部署到Tomcat没有war包

    千次阅读 2020-07-10 01:15:31
    IDEA中创建的web项目部署Tomcat运行时报错 报错如下,找不到war包 问题出在了没有在artifacts中没有进行配置,所以我们需要开始配置artifacts中的web 再次运行,问题解决
  • Linux和Windows环境下,将war包部署到tomcat服务器 一、部署单一项目 以特定接口名称启动项目 首先在Idea或Eclipse中将项目打成war包。 然后将war包上传至tomcat文件夹中的webapps目录中。 修改conf/server.xml...
  • gradle 打包springboot war包部署到tomcat

    千次阅读 2018-08-13 17:19:21
    War插件 添加了两个依赖配置项providedCompile 和 providedRuntime,这两个配置项分别和compile和runtime有相同的作用域,只是不将依赖打包到war文件 可以在idea右边的gralde界面中点击Gradle=&gt;项目=&gt...
  • 文章目录一、生成并导出war包 一、生成并导出war包 快捷键 ctrl+alt+shift+s打开 project structure 项目结构,点击artifacts,新建一个空的war包 点击工具栏上的build>>build artifacts,弹出下面的界面,...
  • idea springboot项目打包成war部署到tomcat上运行访问 一、修改打包形式 在pom.xml里修改打包方式,将打包方式设置成war <packaging>war</packaging> 二、移除嵌入式tomcat插件 在pom.xml里找到...
  • 有关于 Maven 项目的打包部署,我这里用的是 IDEA 编辑器,以此来做个简单的记录。 1.实践环境 操作系统: Windows IDE:IDEA 2.打包部署过程  2.1 选择右边的maven标签,右键点击如图所示Maven clean,...
  • 不多说直接上步骤,注意:该操作是基于Tomcat服务器已经部署好的情况下,才能将项目打成war包部署到Tomcat服务器 首先说一下需求,将箭头指向的模块打成war包并添加到Tomcat服务器 1.点击结果 2.打war包,该...
  • 参考:... 1.运行和调试 IDEA创建gradle项目,项目结构如下 各个文件: build.gradle // https://guides.gradle.org/building-java-web-applications plugins { id ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 636
精华内容 254
关键字:

ideawar包部署到tomcat