jar包编译指定配置文件
‘壹’ 修改jar包中的配置文件
原文地址: 修改jar包中的配置文件
现有jar包 base-web.jar
查找jar包里面的文件:
jar ftv ks-web-1.0.3.jar | grep pom.xml
要修改jar包中配置文件可以用下面三种尘碧芦方式:
方式一 通过vim命令直接修改保存jar。超方便。
通过vim命令直接编辑jar
vim xxx.jar 该命令首先会列出全部文件,可以通过输入/abc来搜索,定位到对应的abc文件后回车进入配置文件内进行编辑,:wq保存。
方式二 通过jar命令替换jar包中的文件(也可新增)
1.列出jar包中的文件清单
jar tf base-web.jar
2.提取出内部jar包的指定文件
jar xf base-web.jar `jar ft base-web.jar | grep t_ivr_data_bj.json`
3.然后可以修改文件
vim BOOT-INF/classes/realtime/t_ivr_data_bj.json
4.更新配置文件到内部jar包.(存在覆盖,不存在就新增)
jar uf base-web.jar BOOT-INF/classes/realtime/t_ivr_data_bj.json
4.1更新内部jar包到jar文件
jar uf base-web.jar 内部jar包.jar
5.可以查看验证是否已经慧清更改
vim base-web.jar
方式三 解压jar包,修改后重新打包jar
1.解压
unzip base-web.jar
2.移除jar包,最好派带备份
rm base-web.jar
3.重新打包
jar -cfM0 base-web.jar *
或者
jar -cvfm0 base-web.jar ./META-INF/MANIFEST.MF ./
4.运行
java -jar base-web.jar
jar命令参数:
-c 创建新的存档
-f 指定存档文件名
-M 不配置配置清单,这样还可以使用maven生成的配置清单也就是MANIFEST.MF
-0 不进行压缩,如果压缩会有问题
-m 指定清单文件
-t 列出归档目录
-x 从档案中提取指定的 (或所有) 文件
-u 更新现有的归档文件
-v 在标准输出中生成详细输出
‘贰’ 自定义jar配置文件问题
自定义jar目前只能读取application.properties和application.yml吧。
可以用一个简单点的方法进行监听注入,在工具包内写一个init方法,在springboot启动时初始化就可以了。比如springboot启动完成后读取配置文件,然后注入到工具包内。
‘叁’ java打包jar时选择哪些配置文件打入
1、首先要确认自己写的程序有没有报错。
2、第一次我写的是Web Project到现在,我一直没有执旁岩行成功,所以最好创建的是java Project
打包步骤:
1.在项目上,右键,选择Export。
2.进入到下图界面,选择Java 下面的JAR file
3.选择项目,确认必要的文件是否选中,选择保存jar文件包的路径,如下图
4.完成步骤3之后,点击Next,进入如下图界面:
5.直接点Next,进入下面的界面:
6.直接点Finish,jar文件包完成。
备注:
1.可以根据自己的需要选择一些条件。
2.打开jar文件包下面的META-INF\MANIFEST.MF这个文件,查看信息是否正确。
Class-Path:这个导入的是,本项目需要的一些其他的jar文件包
Main-Class:这个是main()方法所在的类的.class文件的路径,并且在最后有个回车符(如:上面显示的是,main()方法在test包下面的改棚PostgresSQLSync类中。)
在windows下面运行jar包,确认导出的jar包是否存在问题:
1.打开DOS命令:通过cd切换到本项目路径下,然后,输入java -jar xxx.jar。
如果输入的信息,运歼御和运行项目时,在控制台输出的信息一样,就表示jar文件包已经完成。
下面是我碰到的一些问题:
1.在DOS命令中,出现如下错误时,表示Main-Class没有在META-INF\MANIFEST.MF这个文件中配置。
2.在DOS命令中,出现如下错误时,表示在Class-Path:或者在Main-Class:后面没有输入空格。
‘肆’ java-jar指定配置文件启动
题主是否想询问“枯神java-jar指定配置文件怎么启丛败谈动”?1、首先,打开iava编程软件Eclipse,进入软件主页面渗碰。
2、其次,在左上方找到文件,点击进入,找到java-jar指定配置文件,点击打开。
3、最后,等待系统加载完成,即可打开。
‘伍’ 启动 jar 包时指定 yml 文件
把 application.yml 文件放在执行 java -jar 命令所在的目录桐判中;
执行 java -jar xxx.jar 命令,此时 application.yml 应放在 xxx.jar 同级目录改液;
执行 java -jar /abc/xxx.jar 命令,此时 application.yml 应放在 / 目录;
需要注核轮物意的是,自动加载 application.yml 的位置并不与 jar 包相关,而是与 java 命令有关。
通过 --spring.config.location 参数可以指定配置文件的位置。
java -jar /abc/xxx.jar --spring.config.location=/abc/application.yml
‘陆’ windows下用命令行编译并运行java工程,怎样编译引用的多个jar包和配置文件.xml呢
javac -classpath c:\lib\log4j.jar;D:\lib\logging.jar src\org\myproject\*.java
还可以指定输出目录,如输出到bin(bin目录要预告建立好)
javac -classpath c:\lib\log4j.jar;D:\lib\logging.jar -d bin src\org\myproject\*.java
至于配置文件,因为要看实际的使用,可以用命令拷贝。如拷贝log4j.properties
/y myConfig\log4j.properties bin