java项目部署在windows上能显示的东西在linux就不能显示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java项目部署在windows上能显示的东西在linux就不能显示相关的知识,希望对你有一定的参考价值。

在windows上部署就能显示

把项目部署到linux下就显示不了这个蓝色的小球了
我jsp代码是这样的
<div class="scro_mouse" id="pageLeftWidth" style="background:url(../images/ball_blue.png) no-repeat;"><span id="pageNo1"></span></div>

.scro_mousewidth:21px; height:21px;color:white;cursor:pointer; position:absolute; left:0; top:5px; z-index:1;text-align: center;vertical-align:middle;line-height: 21px;
js控制小球的位置,(结果初始位置就开始不显示了)
js:document.getElementById("pageLeftWidth").style.cssText = "margin-left:"+(pageNo-1)*width + "px;background:url(../images/ball_blue.png) no-repeat;";

参考技术A web工程么?
还是桌面窗口程序?
如果是web工程的话应该是浏览器不支持的问题
如果是桌面窗口程序
可能是路径问题追问

web工程,我是把项目部署在linux下,在windows用浏览器打开

追答

额 不懂linux
加油

参考技术B 从我做跨平台的东西总结来看。图片这类东西一定要全部小写命名,liunx上面尤其大小写混合命名的图片,会报错。也就可能导致图片显示不出来追问

图片名称都是小写英文

参考技术C 可能是图片路径问题,或者是图片命名问题追问

我用的是相对路径,图片名称都是小写英文

追答

使用获取绝对路径,使用绝对路径试试

本回答被提问者采纳
参考技术D windows移植到Linux下出问题,一般是路径的问题,linux的跟路径是从/开始的,不知道你用的是不是文件路径追问

我用的是相对路径,而且其他的图片都能显示出来

Java牛客项目课_仿牛客网讨论区_运行牛客讨论区项目要做的

Windows运行牛客讨论区项目要做的

1、IDEA导入项目
2、打开数据库MySQL和SQLyog
3、打开Redis:双击redis-server.exe

F:\\狂神说的Redis软件\\Redis-x64-3.2.100(Windows版本)

redis-cli.exe也可以双击打开,方便随时查看Redis库[11]中的数据。

127.0.0.1:6379> select 11
OK
127.0.0.1:6379[11]>

4、打开Kafka
先启动zookeeper(第一个命令行窗口):

F:\\Kafka\\kafka_2.13-2.7.0\\bin\\windows>zookeeper-server-start.bat ..\\..\\config\\zookeeper.properties

启动成功,就显示:

[2021-04-14 08:31:02,245] INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)

再启动Kafka(第二个命令行窗口):

F:\\Kafka\\kafka_2.13-2.7.0\\bin\\windows>kafka-server-start.bat ..\\..\\config\\server.properties

如果日志报错,就删除F:\\Kafka\\data\\kafka-logs,再重新启动kafka。
启动成功,就显示:

[2021-04-14 08:32:46,162] INFO [GroupCoordinator 0]: Loading group metadata for community-consumer-group with generation 16 (kafka.coordinator.group.GroupCoordinator)
[2021-04-14 08:32:46,162] INFO [GroupMetadataManager brokerId=0] Finished loading offsets and group metadata from __consumer_offsets-28 in 259 milliseconds, of which 190 milliseconds was spent in the scheduler. (kafka.coordinator.group.GroupMetadataManager)

5、启动Elasticsearch:双击elasticsearch.bat

F:\\狂神说ElasticSearch软件\\elasticsearch-7.12.0-windows-x86_64\\elasticsearch-7.12.0\\bin

启动Head(ES的图形化界面):

F:\\狂神说ElasticSearch软件\\elasticsearch-head-master\\elasticsearch-head-master>npm run start

启动成功,就显示:

Started connect web server on http://localhost:9100

要用到的网站
1、http://127.0.0.1:9200/:显示出网页,则表明成功安装并运行ElasticSearch。
2、elasticsearch-head http://127.0.0.1:9100/:ES的图形化界面插件客户端,名字是Head。相当于关系型数据库的图形化界面,可以查看es的索引、文档、字段。

6、IDEA中点调试按钮,成功就输出:

。。。。
2021-05-13 22:43:06,605 INFO [org.springframework.kafka.KafkaListenerEndpointContainer#3-0-C-1] o.a.k.c.c.i.ConsumerCoordinator [ConsumerCoordinator.java:815] [Consumer clientId=consumer-community-consumer-group-2, groupId=community-consumer-group] Setting offset for partition follow-0 to the committed offset FetchPosition{offset=0, offsetEpoch=Optional.empty, currentLeader=LeaderAndEpoch{leader=Optional[DESKTOP-4OG2TJ0:9092 (id: 0 rack: null)], epoch=0}}
2021-05-13 22:43:06,606 INFO [org.springframework.kafka.KafkaListenerEndpointContainer#1-0-C-1] o.s.k.l.KafkaMessageListenerContainer [LogAccessor.java:292] community-consumer-group: partitions assigned: [delete-0]
2021-05-13 22:43:06,612 INFO [org.springframework.kafka.KafkaListenerEndpointContainer#2-0-C-1] o.s.k.l.KafkaMessageListenerContainer [LogAccessor.java:292] community-consumer-group: partitions assigned: [share-0]
2021-05-13 22:43:06,612 INFO [org.springframework.kafka.KafkaListenerEndpointContainer#0-0-C-1] o.s.k.l.KafkaMessageListenerContainer [LogAccessor.java:292] community-consumer-group: partitions assigned: [publish-0]
2021-05-13 22:43:06,612 INFO [org.springframework.kafka.KafkaListenerEndpointContainer#3-0-C-1] o.s.k.l.KafkaMessageListenerContainer [LogAccessor.java:292] community-consumer-group: partitions assigned: [comment-0, like-0, follow-0]
2021-05-13 22:43:07,137 INFO [RMI TCP Connection(2)-192.168.184.1] o.a.c.c.C.[.[.[/community] [DirectJDKLog.java:173] Initializing Spring DispatcherServlet 'dispatcherServlet'
2021-05-13 22:43:07,138 INFO [RMI TCP Connection(2)-192.168.184.1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:525] Initializing Servlet 'dispatcherServlet'
2021-05-13 22:43:07,139 INFO [RMI TCP Connection(2)-192.168.184.1] o.s.w.s.DispatcherServlet [FrameworkServlet.java:547] Completed initialization in 1 ms

把项目从Windows上部署到Linux上

1、修改项目代码

IDEA项目8.3修改
1、去掉/community

# global.js
var CONTEXT_PATH = "/community";	# Windows
var CONTEXT_PATH = "";				# Linux

2、开关为application.properties,修改时只需要spring.profiles.active=develop/produce,即可。

# profile
spring.profiles.active=develop	# Windows
spring.profiles.active=produce	# Linux

2、删除target文件

在这里插入图片描述
删除target文件遇到的问题和解决方法:IDEA 踩坑之:maven 打包提示 [ERROR] The specified user settings file does not exist…_小白一个-CSDN博客

3、shutdown.sh关闭tomcat,删除/www/server/tomcat/webapps目录下的所有文件。ps -ef | grep elasticsearch检查下es有没有开启,没有的话需要重启es。

重启es时,需要做以下步骤:

1、要先用 ps -ef | grep elasticsearch 看看有没有运行的es进程,有的话,要用 kill PID 来杀死es进程。

2、删除了 /tmp/elastic/data 的data目录。

3、别忘记切换到非root用户

[root@wu1 tmp]# su - nowcoder1
[nowcoder1@wu1 ~]$ /opt/elasticsearch-7.12.0/bin/elasticsearch -d	# 后台启动es
[nowcoder1@wu1 ~]$ su -
Password: 
[root@wu1 ~]# curl -X GET "localhost:9200/_cat/health?v"	# 测试es是否成功启动
epoch      timestamp cluster  status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1619627359 16:29:19  nowcoder green           1         1      0   0    0    0        0             0                  -                100.0%

4、把项目打包为zip压缩包,然后上传到Linux服务器的root目录下。用maven把项目编译并且打包,放到/www/server/tomcat/webapps目录下,然后startup.sh启动tomcat。然后查看tomcat的日志/www/server/tomcat/logs/catalina.2021-05-16.log是否启动成功。

[root@wu1 ~]# unzip -d /root community.zip	# -d后面跟放到哪个目录下。
[root@wu1 ~]# cd community
[root@wu1 community]# mvn clean package -Dmaven.test.skip=true	# 用maven把项目编译并且打包,跳过测试,因为我们前面的测试类写的都不标准,最后单独讲的那个测试才是标准的测试。耗时较长。
[root@wu1 community]# cd target	# 来到/root/community/target目录
[root@wu1 target]# ll	# 看到ROOT.war文件
[root@wu1 target]# mv ROOT.war /www/server/tomcat/webapps/
[root@wu1 target]# startup.sh		# 启动tomcat。虽然立刻返回了信息,但实际上过了一会才启动
Using CATALINA_BASE:   /www/server/tomcat
Using CATALINA_HOME:   /www/server/tomcat
Using CATALINA_TMPDIR: /www/server/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_281-amd64
Using CLASSPATH:       /www/server/tomcat/bin/bootstrap.jar:/www/server/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@wu1 target]# vim /www/server/tomcat/logs/catalina.2021-05-16.log	# 查看tomcat的日志,是否启动成功。

把Linux上能跑的项目改为能在Windows上运行

1、修改项目代码

IDEA项目8.3修改
1、增加/community

# global.js
var CONTEXT_PATH = "/community";	# Windows
var CONTEXT_PATH = "";				# Linux

2、开关为application.properties,修改时只需要spring.profiles.active=develop/produce,即可。

# profile
spring.profiles.active=develop	# Windows
spring.profiles.active=produce	# Linux

项目日志在Linux下的位置

日志目录
Tomcat日志/www/server/tomcat/logs/catalina.2021-05-16.log
项目日志/tmp/community
ElasticSearch日志/tmp/elastic/logs
Kafka日志/tmp/kafka-logs

以上是关于java项目部署在windows上能显示的东西在linux就不能显示的主要内容,如果未能解决你的问题,请参考以下文章

windows下怎么将我的项目部署上到我的本地电脑服务器上去?

windows开发的java项目如何部署到Linux上

Java牛客项目课_仿牛客网讨论区_运行牛客讨论区项目要做的

maven web项目打包部署

java项目部署到windows服务器上如何运行

nssm在windows上部署服务(bat或exe)隐藏黑窗口运行java项目