精华内容
下载资源
问答
  • 通过tomcat命令启动tomcatweb项目时,根据项目大小,有可能会报以下两个错误。在启动时没有错误,但是在访问时会报错:1.java.lang.OutOfMemoryError: Java heap space2.java.lang.OutOfMemoryError: PermGen ...

    通过tomcat命令启动tomcat的web项目时,根据项目大小,有可能会报以下两个错误。

    在启动时没有错误,但是在访问时会报错:

    1. java.lang.OutOfMemoryError: Java heap space

    2. java.lang.OutOfMemoryError: PermGen space

    heap space:

    JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。

    网上大神提示:在JVM中如果98%的时间是用于GC且可用的Heap size 不足2%的时候将抛出此异常信息。Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。

    设置方法:

    在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入

    bat文件:set JAVA_OPTS=%JAVA_OPTS% -server -Xms800m -Xmx800m -XX:MaxNewSize=256m

    sh文件:JAVA_OPTS="$JAVA_OPTS -server -Xms800m -Xmx800m -XX:MaxNewSize=256m"

    permgen space:

    PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中,它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的应用中有很CLASS的话,就很可能出现PermGen space错误,这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。

    设置方法:

    bat文件:set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=128M -XX:MaxPermSize=256m

    sh文件:JAVA_OPTS="$JAVA_OPTS -server -XX:PermSize=128M -XX:MaxPermSize=256M"

    总结:

    最终的设置方式为:

    bat文件:

    set JAVA_OPTS=%JAVA_OPTS% -server -Xms800m -Xmx800m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=512m

    sh文件:

    JAVA_OPTS="$JAVA_OPTS -server -Xms800m -Xmx800m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=512m"

    展开全文
  • 自己手动修改了tomcat 的catalina.bat文件, set "JAVA_OPTS=-server -Xms...增加了这个,但是好像没配置对,导致在IDEA中tomcat一直启动成功,单独启动startup.bat可以启动成功,将这行去掉后,IDEA中Tomcat启动成功

    启动项目报错 java.lang.OutOfMemoryError,自己手动修改了tomcat 的catalina.bat文件,

    set "JAVA_OPTS=-server -Xms512m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=1024m -XX:MaxTenuringThreshold=10 -XX:NewRatio=2 -XX:+UseParallelGC"
    

    增加了这个,导致在IDEA中tomcat一直启动不成功,单独启动startup.bat可以启动成功,将这行去掉后,IDEA中Tomcat启动成功

    2021-11-15找到了原因,不能在catalina.bat设置内存参数后,在IDEA中启动项目,这样会出现冲突,去掉catalina.bat中的设置,在IDEA中配置,如下
    在这里插入图片描述

    展开全文
  • Java web项目启动Tomcat报错解决方案点击运行项目时显示 A Java Exception has occurred.'Starting Tomcat v9.0 Server at localhost' has oncountered a problem.Server Tomcat v9.0 Server at localhost failed to...

    Java web项目启动Tomcat报错解决方案

    点击运行项目时显示 A Java Exception has occurred.

    'Starting Tomcat v9.0 Server at localhost' has oncountered a problem.

    Server Tomcat v9.0 Server at localhost failed tostart.

    并显示以下两个弹框

    a1fd5a10880518f7d33cfbcea2caadb5.png

    ef5f950c7c5519c9c1c84e928d4c50b8.png

    同时控制台报错org.apache.catalina.startup.Bootstraporg.apache.catalina.startup.Bootstrap

    在查询问题后对项目的jdk及Tomcat版本进行设置,但是没有效果

    这是因为找不到bin目录下的bootstrap.jar,需要添加该jar包。

    这种问题一般出现在第一次配置项目,有以下解决办法

    Window——>preferences——>Java——>Installed JREs——>点击相应版本JDK——>Edit ——>Add External ARs——>检索tomcat安装目录bin下的bootstrap.jar,添加后即可解决问题。

    9b51275c8ae3b23cbb49c25efef4fc8e.png

    8f2729f40912c1f38a955775ef55fadd.png

    dbf4d0cae2024917c5fb01fa92650486.png

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

    时间: 2020-07-30

    6b5aa0751a6f1e6a9d0b665a02cc1f46.png

    在java web开发的时候经常会用到读取读取或存放文件,这个文件的默认路径在哪里呢?写死在程序里面显然是可以的,但这样子不利于位于,假如有一天项目从window移植到linux,或者保存文件的路径变了,就需要去源代码中查找,进行替换,这样子不仅效率低,而且程序的耦合度也会过高,这里我用了一个properties文件用于存放文件的保存路径,需要保存或者读取都来自己properties所保存的路径. 1.我存放的propeities文件路径 因为linux和window上面的分盘是不一样的,所以我

    6b5aa0751a6f1e6a9d0b665a02cc1f46.png

    本文实例讲述了Java Web项目部署在Tomcat运行出错与解决方法.分享给大家供大家参考,具体如下: 1.在部署Java Web项目的过程中,启动Tomcat出现报错提示 具体报错如下: Could not load the Tomcat server configuration at \Servers\Tomcat v7.0 Server at localhost-config. The configuration may be corrupt or incomplete. 元素类型 "H

    6b5aa0751a6f1e6a9d0b665a02cc1f46.png

    1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图: b.因为tomcat的安装依赖于Java jdk,所以我们需要在判断linux系统下面是否安装jdk b.1 使用(Xshell)连接到Linux系统下面 b.2 输入命令:java -version,如果显示jdk版本号,则证明已经安装,如果不显示,则证明没有安装,如果没有安装,请参考下面地址进行安装:http://

    6b5aa0751a6f1e6a9d0b665a02cc1f46.png

    前言 HTML5 WebSocket实现了服务器与浏览器的双向通讯,双向通讯使服务器消息推送开发更加简单,最常见的就是即时通讯和对信息实时性要求比较高的应用.以前的服务器消息推送大部分采用的都是"轮询"和"长连接"技术,这两中技术都会对服务器产生相当大的开销,而且实时性不是特别高.WebSocket技术对只会产生很小的开销,并且实时性特别高.下面就开始讲解如何利用WebSocket技术开发聊天室.在这个实例中,采用的是Tomcat7服务器,每个服务器对于WebSoc

    6b5aa0751a6f1e6a9d0b665a02cc1f46.png

    (1)我们初学者在学习javaweb的时候每次更改项目都需要重新部署项目,这样的二话太麻烦 (2)使用tomcat的热启动就可以解决这个问题: 在tomcat目录下:找到 conf ----context.xml 打开 填写圈中的 就好了! (3)如果你的tomcat是自己的myeclipse中自带的话 就需要在自己的项目中找到 是在自己的工作区间下: 这是我的工作区间 就是第一个 点进去 有一个 .me_tcat 看到了conf 其他的过程和上述一样!

    一.安装JDK 1.卸载旧版本或者系统自带的JDK (1)列出所有已安装的JDK rpm -qa | grep jdk (2)卸载不需要的JDK yum -y remove 安装包名称 2.下载并解压JDK (1)下载安装包 进入到/usr/local目录下新建java目录 mkdir java ,在Java目录下使用wget指令下载安装包,如 wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2

    IDEA创建一个传统JAVA WEB项目(不使用maven构建) 方法一 File --> NEW --> Project --> Java (勾选Web Application) 方法二 File --> NEW --> Project --> Java Enterprise(勾选Web Application) IDEA部署JAVA WEB项目 IDEA 并非把项目放到 tomcat 的 webapp目录中,而项目还是在源项目目录中,IDEA采用了一种无入侵Tomc

    6b5aa0751a6f1e6a9d0b665a02cc1f46.png

    之前进行Web开发的时候使用的是myeclipse,但只用过的人都知道,由于其插件太多,而且有很多插件的功能根本就接触不到.所以导致一旦工程稍微大一点就会很卡,虽然之前也对其进行优化过,但还是觉得不太好用.今天闲来无事,就决定尝试一下最原始的办法,使用记事本+Tomcat进行开发.虽然效率不是很高,但是熟悉了最基本的一些操作,也算是颇有收获.而在在篇博客中,我将分享一下我觉得今天最大的收获. 我们都知道,我们要将项目在Tomcat中部署运行,所使用的.class文件需要保存到一个特定的目录下(当

    6b5aa0751a6f1e6a9d0b665a02cc1f46.png

    一.WebSocket简单介绍 WebSocket protocol 是HTML5一种新的协议.它实现了浏览器与服务器全双工通信(full-duplex).一开始的握手需要借助HTTP请求完成握手. 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展了浏览器与服务端的通信功能,使服务端也能主动向客户端发送数据. WebSocket背景 在浏览器中通过http仅能实现单向的

    http://www.jb51.net/article/114838.htm这篇文章很详细的介绍了JS的跨域,给出的解决方案是springboot的方式,假如不用spring boot 或者 spring版本低于4.2就需要自己实现: 参考了spring boot的实现方式,并有所简化,代码如下: package com.lvluo.web.filter.CorsFilter; import java.io.IOException; import javax.servlet.Filter; im

    0786a6186b86f60570e1a1f5be47f730.png

    前言 最近工作中遇到一个需求,需要实现截图功能,断断续续查找资料.验证不同的实现方法终于算基本搞定了页面截图,因为中间过程曲折花费较多时间,分享出来帮助大家快速实现截图 为什么选用phantomjs进行截图 截图可以实现的方式有很多,比如: selenium HtmlUnit Html2Image...and so on但是这些实现的截图效果都不好.selenium只能实现截屏,不能截取整个页面,而HtmlUnit.Html2Image对js的支持效果并不好,截下来的图会有很多空白.phanto

    d648c4f408873e2864fb81e5210682df.png

    一.WebSocket简单介绍 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随着HTML5的诞生,WebSocket协议被提出,它实现了浏览器与服务器的全双工通信,扩展了浏览器与服务端的通信功能,使服务端也能主动向客户端发送数据. 我们知道,传统的HTTP协议是无状态的,每次请求(request)都要由客户端(如 浏览器)主动发起,服务端进行处理后返回response结果,而服务端很难主动向客户端发送数据:这种客户端是主动方,服务端是被动方的传统Web模式

    系统:Ubuntu 16.04 dev_desktop 1.Java安装并配置环境变量 (1)从Java官方网站下载最新版JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载jdk压缩包 jdk-8u144-linux-x64.tar.gz (2)  将压缩包解压并复制到/usr/lib 目录下 tar -zxvf jdk-8u144-linux-x64.tar.gz sudo cp -r ./jdk

    以前导出总是用POI导出为Excel文件,后来当我了解到CSV以后,我发现速度飞快. 如果导出的数据不要求格式.样式.公式等等,建议最好导成CSV文件,因为真的很快. 虽然我们可以用Java再带的文件相关的类去操作以生成一个CSV文件,但事实上有好多第三方类库也提供了类似的功能. 这里我们使用apache提供的commons-csv组件 Commons CSV 文档在这里 http://commons.apache.org/ http://commons.apache.org/proper/co

    Shell执行/调用Java/Jar程序例子的实例详解 前言: 最近要写一个独立的Java程序去监控Hadoop和Oozie,通过Shell去调用.写代码到现在也4年多了,貌似就从来没在生产环境中写过一个独立的Java程序,不是部署到Tomcat就是直接丢给Hadoop.于是参考Hadoop等开源环境,自己写了一个demo,并且可以通过Ant打包生成可运行的程序.所以这里有三步:Java程序,Shell,Ant      1.首先建立Java程序,由于是例子,所以这里很简单,只是输出传入参数的个

    Java CountDownLatch完成异步回调实例详解 实例代码: public class AsyncDemo { private static void doSomeTask() { System.out.println("Hello World"); } private static void onCompletion() { System.out.println("All tasks finished"); } public static void ma

    Java Exception 捕获和显示实例详解 在进行Java B/S架构开发时,经常有这样的场景:后端处理业务逻辑,前端负责展示,当后端处理出现异常时,如何把错误信息展示给前台呢?错误信息栈通常很多,对开发人员查找问题比较方便,但对于客户来说,打一堆的错误信息,无疑是对他们感官的一种摧残,如何捕捉最重要的信息显示到客户端呢?该信息要求简明扼要,指向出错点,且应指明异常的类型. 在很多情况下Exception的 getMessage()方法返回空的值,如果使用该方式则会在前端显示空值.我们要显

    279feeadcc6e19c3a7127bb7d5745912.png

    自定义雷达图表如下: 1.创建UserControl,名为"RadarChartControl" 前台:

    展开全文
  • 如果JVM里运行的程序,它的内存堆和持久存储区域的都满了,这个时候程序还想创建对象实例的话,垃圾收集器就会启动,试图释放足够的内存来创建这个对象。这个时候如果垃圾收集器没有能力释放出足够的内存,它就会抛出...

    如果JVM里运行的程序,

    它的内存堆和持久存储区域的都满了,这个时候程序还想创建对象实例的话,垃圾收集器就会启动,试图释放足够的内存来创建这个对象。这个时候如果垃圾收集器

    没有能力释放出足够的内存,它就会抛出OutOfMemoryError内存溢出错误。

    SUN JVM的内存管理方式:

    SUN的JVM是类似人类家族,也就是在一个地方创建对象,在它长期占据空间之前给它多次死亡的机会,SUN

    JVM会划分为:

    1. 新生代(Young

    generation),包括EDEN和2个幸存者空间(出发地和目的地the From space and the To

    space)

    2. 老年代(Old generation)

    3. 持久代(Permanent generation)

    Java虚拟机的运行时数据区一般分类如下(不一定是物理划分):

    1. 堆:主要存放对象实例,线程共享

    2. 栈:主要存储特定线程的方法调用状态,线程独占

    3. 本地方法栈:存储本地方法的调用状态,线程独占

    4. PC寄存器:学过操作系统课程的都知道,线程独占

    5. 方法区:主要存储了类型信息,线程共享

    因此,在抛出内存溢出错误的时候,一般都会提示内存泄露的种类,一般也都是按照区域进行划分:

    1. 堆(heap)内存泄漏java.lang.OutOfMemoryError: Javaheap space:大家都比较熟悉

    ,通过设置-Xms2048m -Xmx4096m可以解决

    2. 栈(stack)内存泄漏:当前线程运行期间维护的中间变量等信息过多,例如常见的死循环引起stack over flow

    3. 方法区(permanent

    heap)内存泄漏,即java.lang.OutOfMemoryError: PermGen

    space:发生的原因和类型装载、类型卸载有直接的关系,

    通过设置-XX:MaxNewSize=256m -XX:MaxPermSize=256m可以解决。

    一般情况下,当服务器内存过小,而提供了大量的访问服务时,可能会缓存过多的数据对象造成堆内存溢出,当web应用不断扩大,加载的lib库达到一定大小(4M)后,

    就容易报PermGen space,也就是方法区溢出。

    在Linux服务器中将参数写入环境变量:

    export CATALINA_OPTS="-Xms1024m -Xmx2048m"

    export JAVA_OPTS="-XX:MaxNewSize=256m -XX:MaxPermSize=256m"

    Xmx 最大不要超过服务器物理内存的80%

    展开全文
  • 1、首先当我们第一次打开web 项目的时候,注意我们idea 的右下角,会出现一个Config,我们点击Ok, ...4、点击Add Configuration 添加我们的tomcat容器 名称随意起,一般项目名即可,Configure 是你本.
  • 然后再添加 rg.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version string [4.0] 错误:    在idea创建WEB项目之后,打印出的日志中总是出现: 12-May-2018 15:52:30.692 警告 [RMI TCP ...
  • 针对以前部署在低版本的Tomcat上面的web项目,迁移到新版本后浏览器访问js出现中文乱码,导致页面空白。如下图所示: 从上面现象可以看出是浏览器在解析js文件的时候,文件里面产生了中文乱码才导致的,所以很快就...
  • 项目WEB-INF\classes下添加logging.properties文件,内容如下: handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler ############################################################ #...
  • 发布web项目的时候Tomcat启动报错 并且弹出前端页面 在学习ssm整合框架发布项目的时候Tomcat启动失败,并报如下图错误,而且浏览器不会弹出页面。 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina....
  • 点击运行项目时显示A Java Exception has occurred.'Starting Tomcat v9.0 Server at localhost' has oncountered a problem.Server Tomcat v9.0 Server at localhost failed tostart.并显示以下两个弹框同时控制台...
  • 严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListenerjava.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListenerat org...
  • 导致tomcat启动后出现中文乱码的原因有很多种,这里仅列举一种我亲测有效的方法。 第一步:打开IDEA安装目录,找到如下两个文件,用任意文本编辑器打开。 第二步:在上述两个文档中添加如下代码并保存。 -...
  • 在eclipse集成tomcat开发java web项目时,引入的外部jar包,编译通过,但启动tomcat运行web时提示找到jar包内的类,需要作如下配置,将jar包在部署到集成的tomcat环境中。问题:在 web应用 右键->Run as -> ...
  • 原因在于tomcat 允许使用本地资源,可以再src中替换网络图片后查看是否显示 <img src="https://cn.bing.com/images/search?q=500%e9%94%99%e8%af%af%e5%9b%be%e7%89%87&id=054A9C08F39425250F7C95DB6E22A...
  • Tomcat如何加载web项目

    2021-11-10 19:21:28
    Tomcat加载web项目的原理 WEB项目相信大家一定都很了解,但是开发久了慢慢就忘记了基础,下面抛出两个问题: (1)tomcat如何加载web项目的? (2)tomcat如何加载带有spring的web项目Tomcat如何加载web项目? ...
  • 现状都是spring走天下,今天碰到了要给老项目,需要idea配置tomcat启动。 网上的教程在赘述,这里在启动中遇到一个问题,默认的启动路径为下划线连接符,比如hello-world项目在启动时会变成hello_world,碰巧老...
  • Tomcat WEB启动过程

    2021-02-04 14:51:38
    这里我们将通过实际项目进行分步骤介绍web 启动加载步骤。如下是一个实际的springMVC下web项目的结构。 那么问题是tomcat 启动过程中是如何使得该项目生效的呢。大致分为两个步骤。 步骤一、解析server.xml   启动...
  • tomcat 启动慢在线上环境中,我们经常会遇到类似的问题,就是tomcat启动比较慢,查看内存和cpu,io都是正常的,但是启动很慢,有的时候长达几分钟,这到底是什么原因导致的。1.1 tomcat 获取随机值阻塞​ tomcat的...
  • 只是不会自动跳转出网页 原来是之前设置了Internet代理服务器。。。 关掉就好了
  • 以前学习的时候只知道在...1 直接将web项目文件件拷贝到webapps目录中这是最常用的方式,Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。如果你想要修改这个默认目录,可...
  • 问题出现的原因 是因为我的部分资源文件并在该项目中。...所以启动后出现找到资源。 解决方案 此解决方案仅适用于依赖的资源目录独立于项目外的情况 点击+号,将资源目录添加到待部署 点击OK,重启即可 ...
  • https://www.cnblogs.com/JAYIT/p/13209714.htmltomcat 中jsp不会乱码 但是html中文会乱码原因有好几个:没有设置页面编码 tomcat的...8 在页面头部添加标签tomcat的server.xml配置(1) 添加 URIEncoding=“UTF-8”...
  • 找到工作空间,看发布目录,项目结构是否完整。 E:\Workspace2020\agency\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps WEB-INF下web.xml是否有问题。具体问题具体分析。
  • 今天遇上一个bug,打开myeclpse的工作空间,显示报错,重新更新maven,启动tomcat发现项目来。查询了一系列的资料之后,发现可能是java build path 和deployment assembly有一方面有问题了 java build path :...
  • 在标准的开发流程中,Android 应用并承担过多的业务逻辑处理Android 主要负责提供数据的展示和与用户的交互Android 的主要使命和前端的使命类似:提供漂亮精致的UI视图 高效快速的渲染 灵活的交互处理基于此,无论...
  • idea部署web项目tomcat报错404解决

    千次阅读 2021-02-22 11:32:19
    首先要确定部署web项目的步骤正确 ...4、facets中添加web模块,确认好路径,path要定位到web.xml目录下,web resource要定位到web目录下 5、配置tomcat 命名推荐改为你当前的模块/项目名 deployment选择上面步骤

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 195,248
精华内容 78,099
关键字:

tomcat启动不加载web项目