首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

「问答」解决jar运行时相对路径问题

我这几天需要做一个Java程序,需要通过jar的形式运行,还要生成文件。 最终这个程序是要给被人用的,可能那个用的人还不懂代码。 于是我面临一个问题:生成的文件一定不能存绝对路径。...刚开始我想得很简单,打绝对路径改成相对路径不就行了吗? 于是有了这样的代码: String path = ".....但是,放在jar里面就不行了。 你把代码打成jar,然后用java -jar 命令运行,你会发现,没有这个文件,不知道它生成到哪里去了。 这是为什么?我也很纳闷。...所以,我必须找到jar运行时的路径。...最终打印出的路径是: 获取路径成功:LOCATION=/Users/maomao/Documents/eclipse/test.jar 也就是说,这个路径是包含了jar文件名在内的,使用时需要注意。

3K20

linux运行jar的命令_linux部署jar的几种方式

要运行java的项目需要先将项目打包成war或者jar,打包成war需要将war部署到tomcat服务器上才能运行。而打包成jar可以直接使用java命令执行。...在linux系统中运行jar主要有以下几种方式。 一、java -jar XXX.jar 这是最基本的jar执行方式,但是当我们用ctrl+c中断或者关闭窗口时,程序也会中断执行。...二、java -jar XXX.jar & &代表在后台运行,使用ctrl+c不会中断程序的运行,但是关闭窗口会中断程序的运行。...三、nohup java -jar XXX.jar & 使用这种方式运行的程序日志会输出到当前目录下的nohup.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。...三、nohup java -jar XXX.jar >temp.out & >temp.out的意思是将日志输出重定向到temp.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。

6.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

Linuxjar启动和jar后台运行的实现方式

Linux 运行jar命令如下: 方式一: java -jar shareniu.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定?...方式二 java -jar shareniu.jar & &代表在后台运行。 特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。 继续改进,如何让窗口关闭时,程序仍然运行?...方式三 nohup java -jar shareniu.jar & nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行 当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到...fg 23 查看某端口占用的线程的pid netstat -nlp |grep :9181 如果忘了进程号,可以通过如下命令来查看当前运行的jar程序进程号 ps -ef|grep xxx.jar...或者 ps -aux | grep java //关闭进程 kill -s 9 24204 24204代表上一步查出的进程ID 总结 以上所述是小编给大家介绍的Linuxjar启动和jar后台运行的实现方式

8.5K22

使用jenkins连接linux部署jar

创建ssh插件 jenkins管理linux服务器是通过ssh工具连接的,所以,首先,我们要给linux服务器安装ssh。 linux安装ssh也很简单,就执行几个命令即可。...然后,创建一个自由风格的任务,如下图: 为了能运行我们的jar,我们需要把发布好的jar,上传到linux的/soft/app-kiba-spring-kafka/,然后创建一个startup.sh...这个java版本我们不用关心,因为这个java版本是jenkins的所在docker容器的java版本,只要让jenkins通过这个jdk能执行命令即可,实际我们的jar运行容器或者服务器,有自己的java...结语 这样,我们就完成了使用jenkins连接linux部署jar。...当然,他还可以在上面的步骤中再加一步,构建一个docker容器,再向容器里发布jar。 jenkin的使用非常复杂,只能靠自己慢慢摸索。

16010

Jar 命令打包 jar

activation.jar (加入了Class-Path: mail.jar activation.jar,用空格分隔两个jar) 这样我们仍然可以使用和上例中相同的命令来执行该程序: java...来分隔目录(),无论是在什么操作系统中,(即使在window中),而且这里用的是相对路径(相对于本身的JAR文 件):  Manifest-Version: 1.0 Created-By: JDJ example...5. jar内有些配置文件想放在jar外面,比如文件config.properties:如果这个文件是以路径方式载入的,比如new file("..../config/config.properties"),那么将config.properties放在jar相同目录下的config目录下即可,也就是说“./”路径等价于jar所在目录;如果这个文件是以.../config/”,然后把配置文件都放在jar相同目录下的config目录下。

5.5K30

Linux服务器后台运行jar

转载自https://juejin.im/post/5b47411ee51d45190570ce6d 最终的运行命令: nohup java -jar xxx.jar >logs.txt & 复制代码...1.首先最基本的运行jar命令是: java -jar xxx.jar 复制代码 这个命令会锁定命令窗口,只能看到当前运行的输出信息。而无法发送其他指令。...2.让jar后台运行 用"&"符号结尾表示,让程序在后台运行。 这样的话,命令窗口就不会被锁定,而可以发送其他指令,但是当窗口关闭时,后台运行的程序依然会被停止。...如果不写情况下(缺省),就回默认在jar所在目录,创建nohup.out文件。...如果忘了进程号,可以通过 ps -ef|grep xxx.jar 复制代码 来查看当前运行的jar程序进程号。

4.5K10

Linux系列之查找jar安装目录

问题描述 最近需要改动一个项目,不过不知道安装目录在那里,所以需要通过一些linux命令进行查找安装的jar放在那里 ---- 解决方案: 先使用ps命令 查找对应jar的进程,知道对应jar具体的...jar名称 [root@node /]# ps -elf|grep platform 4 S minstone 30516 1 0 80 0 - 1495172 futex_ 7月06...01:25:36 java -Xms512m -Xmx512m -jar platform-project.jar ps命令用于查看进程统计信息 常用参数: a:显示当前终端下的所有进程信息,包括其他用户的进程...-T:查看进程下面的子线程 在使用中可以加上grep命令一起使用,也可以单独使用 找到对应的jar之后,使用find命令查找对应路径 find / -iname platform-projecct.jar...支持正则表达式,是linux很常见的命令,常用参数如: 参数 作用 -name 匹配名称 -perm 匹配权限(mode为完全匹配,-mode为包含即可) -user 匹配所有者 -group 匹配所有组

3.3K30

Jar 加密

,来特定打开某些需要打开的才能正常启动项目,下面的命令增加了启动参数,JAR可以正常执行。.../encrypted.jar 3.4 拓展 如果觉得以上加密操作很麻烦,还需要编写单元测试,XJar还提供了maven插件,可以在打包的同时对jar进行加密。...四、ClassFinal实践 4.1 功能特性 无需修改原项目代码,只要把编译好的 jar/war 用本工具加密即可 加密后的 jar 可直接使用命令运行 支持加密 WEB-INF/lib 或 BOOT-INF.../lib 下的依赖 jar 支持机器码绑定,仅允许在指定机器上运行 支持加密配置文件 4.2 使用步骤 首先点击下载,得到一个 classfinal-fatjar-1.2.1.jar 文件。...参数说明 -file 加密的jar/war完整路径 -packages 加密的名(可为空,多个用","分割) -libjars jar/warlib下要加密jar文件名(

3.3K40

用docker部署jar_warjar部署区别

# demo-0.0.1-SNAPSHOT.jar 就是你上传的jar,替换为jar的名称 # demo.jar 是你将该jar重新命名为什么名称,在容器中运行 # expose 该容器暴露的端口是多少...,就是jar在容器中以多少端口运行 # entrypoint 容器启动之后执行的命令,java -jar demo.jar 即启动jar 4....不用每次发布需要重新构建docker容器,只需要替换宿主机中的jar即可 1. 在服务器中拉取jdk1.8的镜像 docker pull jdk8 2....# -Duser.timezone 是设置时区 # jdk8 /usr/bin/java -jar 是执行 java jar的命令 # /jar/demo-1.0.jar 是需要运行的...jar的位置在容器中的什么位置,/jar 下面 上面就是两种部署jar的方式,并且还可以更方便的部署~~,就是使用maven插件,一键直接部署,后续可以继续再写~~ 版权声明:本文内容由互联网用户自发贡献

2.1K60

Linux使用Shell脚本部署jar项目

一.安装JDK 查看电脑的操作位数: uname -ar 2017 x86_64 x86_64 x86_64 GNU/Linux 如果这里显示是64位的就下载相应64位的 jdk的下载地址,推荐下载...tar.gz的 下面开始正式的安装jdk 1、上传jdk的安装到 /root jdk-8u131-linux-x64.tar.gz 2、确认系统是否已经安装过jdk rpm -qa|grep...jdk rpm -e --nodeps 软件名称 //如果检查到有安装就执行卸载命令 3、解压缩jdk的安装到指定目录 tar -xvf jdk-8u131-linux-x64.tar.gz...image.png app下面放置主要的jar,如myjar,下面是相关的restart.sh的内容: #!.../app/${app_name}.jar 访问相关的路径:(这里根据你的jar的相关端口来修改 http://ip:8080/ 查看日志的路径: cd /log 这里下面会显示相关的jar的名称和日期的

3.6K31
领券