Springboot读取jar包中的MANIFEST.MF文件内容

更新时间:2023-05-12 23:17:29 阅读: 评论:0

优秀教师主要事迹300字
Springboot读取jar包中的MANIFEST.MF⽂件内容
Springboot打包成可执⾏jar包后,包结构如下所⽰:
⼯程编译后的⽂件都在BOOT-INF/class⽬录下,如果需要读取并显⽰META-INF/MANIFEST.MF⽂件内容,那么可以⽤以下⽅式来实现:import org.springframework.util.ClassUtils;求合
import org.springframework.util.FileCopyUtils;
import java.io.InputStreamReader;
会计自我鉴定import java.io.StringReader;
import java.io.StringWriter;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;施工现场安全管理
………………………………
JarFile jarFile = null;
try {
  // 获取jar的运⾏路径,因linux下jar的路径为”file:/app/.../test.jar!/BOOT-INF/class!/“这种格式,所以需要去掉”file:“和”!/BOOT-INF/class!/“
String jarFilePath = DefaultClassLoader().getResource("").getPath().replace("!/BOOT-INF/class!/", "");
if (jarFilePath.startsWith("file")) {
jarFilePath = jarFilePath.substring(5);
}
log.debug("jarFilePath:" + jarFilePath);
  // 通过JarFile的getJarEntry⽅法读取META-INF/MANIFEST.MF
jarFile = new JarFile(jarFilePath);
JarEntry entry = JarEntry("META-INF/MANIFEST.MF");白花酢浆草
  // 如果读取到MANIFEST.MF⽂件内容,则转换为string
if (entry != null) {
StringWriter writer = new StringWriter();
jarFile.clo();
String content = String(new String()));
log.debug("MANIFEST.MF content:" + content);扬长而去
    return content;
} el {
return null;
}
} catch (Exception ex) {
<("error when reading MANIFEST.MF", ex);
淘宝店铺免费推广
} finally {
if (jarFile != null) {
data的复数jarFile.clo();
}
}

本文发布于:2023-05-12 23:17:29,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/890053.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:需要   读取   推广   优秀教师   打包
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图