首页 > 系统相关 >部署项目到Linux踩的坑

部署项目到Linux踩的坑

时间:2023-10-07 22:11:43浏览次数:35  
标签:java 项目 部署 headless 模式 Headless init mode Linux

一、tomcat版本不一致

在windows上开发时用的tomcat9,实现javax.servlet.Filter的实现类无需重写init()和destroy(),

但我在Linux上安装的tomcat是8.5,javax.servlet.Filter的实现类需要重写init()和destory()。

导致我能访问到linux上tomcat主页,但是不能访问部署的项目,在日志文件中发现全是java.lang.AbstractMethodError报错。

在过滤器中实现了init()和destory()方法后重新打包部署就能访问了。

二、验证码图片加载不出来

这里在博客园看到一个大佬发的,在这记录一下

 

用java写了一个验证码功能,把项目放linux服务器下之后图片显示不出来,后来同事找到了原因。

1.什么是Headless mode?
Headless模式是系统的一种配置模式。在该模式下,系统缺少了显示设备、键盘或鼠标。

2.何时使用和headless mode?
Headless模式虽然不是我们愿意见到的,但事实上我们却常常需要在该模式下工作,尤其是服务器端程序开发者。因为服务器(如提供Web服务的主机)往往可能缺少前述设备,但又需要使用他们提供的功能,生成相应的数据,以提供给客户端(如浏览器所在的配有相关的显示设备、键盘和鼠标的主机)。

3.如何使用和Headless mode?
一般是在程序开始激活headless模式,告诉程序,现在你要工作在Headless mode下,就不要指望硬件帮忙了,你得自力更生,依靠系统的计算能力模拟出这些特性来:
System.setProperty("java.awt.headless","true");

解决:

生成图片的java文件里写:

public class RandomNumUtil {

    static{
        System.setProperty("java.awt.headless", "true");
    }

}

原文地址:https://www.cnblogs.com/zf2011/archive/2011/11/23/2260658.html

加上那段代码就能显示了,666.

三、部分css样式缺失

有些元素没有样式了,打开控制台发现请求css的响应都是404,还有一些请求js的也是404,还不知道为啥。。。

标签:java,项目,部署,headless,模式,Headless,init,mode,Linux
From: https://www.cnblogs.com/giaogiaoyang/p/17747604.html

相关文章

  • Linux---0.11---asm.s硬件中断类型介绍
    _divide_error这是一个标记,通常用于表示与除法错误相关的处理程序或函数。当发生除以零的错误时,处理器可能会跳转到与此标记关联的处理程序,以处理该错误。_debug_debug:这是一个标记,通常用于表示与调试相关的处理程序或函数。调试处理程序通常用于在调试模式下捕获和处理调试事......
  • Linux - 安装MySQL
    下载地址:https://downloads.mysql.com/archives/community/安装步骤:mkdirmysqltar-xvfmysql-8.0.26-1.el7.x86_64.rpm-bundle.tar-Cmysqlrpm-ivhmysql-community-common-8.0.26-1.el7.x86_64.rpmrpm-ivhmysql-community-client-plugins-8.0.26-1.el7.x86_64.rp......
  • 在Linux中如何查找包含特定文本(字符串)的所有文件?
    内容来自DOChttps://q.houxu6.top/?s=在Linux中如何查找包含特定文本(字符串)的所有文件?如何在文件内容中查找包含特定文本字符串的所有文件?以下方法不起作用,似乎显示了系统中的每个文件。find/-typef-execgrep-H'text-to-find-here'{}\;请执行以下操作:grep-r......
  • Go 项目代码布局
    Go项目代码布局目录Go项目代码布局一、Go语言“创世项目”结构1.1src目录结构三个特点二、Go项目布局演进2.1演进一:Go1.4版本删除pkg这一中间层目录并引入internal目录2.2演进二:Go1.6版本增加vendor目录2.3演进三:Go1.13版本引入go.mod和go.sum三、现在Go......
  • Linux p1 VMware虚拟机网络连接三种模式
    VMware虚拟机网络连接三种模式:想自己记录笔记,但是完全写不出来啊,直接转载吧桥接模式:桥接模式,点击查看NAT模式:NAT模式,点击查看主机模式:主机模式,点击查看......
  • 路飞项目需求
    1.企业项目类型1.面向互联网用户:商城类项目-微信小程序商城-线上线下结合2.面向互联网用户:二手交易-闲鱼-转转-交友平台3.公司内部项目,给某些用户定制项目:python写的重点-运维管理,监控平台,资产管理-oa系统-打卡系统工资核......
  • filebeat docker 部署
    官网:https://www.elastic.co/guide/en/beats/filebeat/8.10/index.htmlhttps://www.elastic.co/guide/en/beats/filebeat/8.10/running-on-docker.html 1.拉取镜像sudodockerpullelastic/filebeat:8.10.2 2.准备配置文件sudomkdir-p/opt/docker/filebeatsu......
  • docker部署nacos集群
    环境准备系统ip 插件centos710.190.107.191docker、nginxcentos710.190.107.192docker、nacoscentos710.190.107.193docker、nacoscentos710.190.107.194docker、nacos  1、提前准备MySQL 创建nacos库并执行sql文件dockerrun-id-p......
  • Linux基础使用
    Linux基础命令Linux目录结构Linux只有一个顶级目录,称之为:根目录出现在开头的/表示:根目录出现在后面的/表示:层次关系Windows系统有多个顶级目录,即各个盘符Linux命令Linux命令格式无论是什么命令,用于什么用途,在Linux中,命令有其通用的格式:command[-option][paramete......
  • Linux怎么切换目录
    目录切换cd命令:cd目录cd/           切换到根目录cd/usr        切换到根目录下的usr目录cd../          切换到上一级目录或者cd..cd~           切换到home目录cd-       ......