作者qrtt1 (有些事,有时候。。。)
看板java
标题Re: [问题] 档案读取特定区块内容
时间Sat Jul 31 08:40:27 2021
打包後常见的问题是。
[1] 读档不成功
把设定直接当作 File 处理,但实际上他是在 Zip 档内的 Entry。
所以,应该先用 classloader 的 getResourceAsStream() 读进来
直接在 memory 中操作 InputStream 或是先读成一个字串
再接着用 yaml library 处理它。
[2] 相依的 library 找不到
以 IDE 常包出来的是一个 jar 内有你的 class 与其他相依的 jar
但比较常用的方式大概有
1. fatjar (aka uberjar) 把其他 jar 也解压缩跟 class 包一起
maven 与 gradle 都有相关的 plugin
2. 独立包一个 jar 与分开的 library,再设 classpath 让它执行时找得到
maven 与 gradle 也都有支援「包」application 的功能
顺便把 .bat 或 .sh 都生好了。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.160.131.222 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1627692029.A.258.html
※ 编辑: qrtt1 (118.160.131.222 台湾), 08/01/2021 09:37:46