Java的marven工程读取resources文件,并打可执行的jar
Java的maven工程读取resources文件,并打可执行的jar
文章目录
- Java的maven工程读取resources文件,并打可执行的jar
- 如何读取resources文件
- maven如何打可执行的jar
首先这是个maven工程,实现目标:
- 如何读取resources文件
- 如何打可执行的jar
如何读取resources文件
IDEA的maven工程没有resources文件,创建的方法见intelliJ idea新建maven项目没有resource文件夹。
项目的结构如图所示:
现在的目标就是读取resources下的json和pb文件:
- 首先读取json文件,这里的关键是使用
InputStream is = FreezePbLoader.class.getClass().getResourceAsStream(file_name);
获取InputStream
对象,然后再读取成字符串,最后转json。
// import java.io.*;
// import java.util.Map;public static Map<String, Integer> load_vocab_resources(String file_name){String jsonStr = "";try{InputStream is = FreezePbLoader.class.getClass().getResourceAsStream(file_name);BufferedReader br = new BufferedReader(new InputStreamReader(is));String s="";String configContentStr = "";while((s=br.readLine())!=null) {configContentStr = configContentStr+s;}Map vocab = JSONObject.parseObject(configContentStr);return vocab;} catch (Exception e) {System.out.println( "文件出现异常,读取失败!————");e.printStackTrace();return null;}}// 用法
// Map vocab = load_vocab_resources("/word2idx.json");
- 同样读取模型的
pd
文件,关键是InputStream is = FreezePbLoader.class.getClass().getResourceAsStream("/frozen_model.pb");
,可以找到resources文件夹下的/frozen_model.pb
。注意要带斜杠,否则报错!
Graph graph = new Graph();InputStream is = FreezePbLoader.class.getClass().getResourceAsStream("/frozen_model.pb");
byte[] graphBytes = IOUtils.toByteArray(is);
graph.importGraphDef(graphBytes);
Session session = new Session(graph);
maven如何打可执行的jar
会输出可执行和不可执行的jar包
pom.xml
里增加
<build><finalName>${project.artifactId}</finalName><!--修改编译出来的jar包名,仅为{artifactId}.jar--><plugins><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs><archive><manifest><mainClass>com.iflytek.tensorflow.FreezePbLoader</mainClass></manifest></archive></configuration><executions><execution><id>make-assembly</id><phase>package</phase><goals><goal>single</goal></goals></execution></executions></plugin></plugins>
</build>
如下图所示:
Java的marven工程读取resources文件,并打可执行的jar相关推荐
- vbs脚本功能:1、判断系统位数64/32;2、读取注册表,读取应用名称。3、读取txt文件;4、执行exe文件,安装程序。
vbs脚本功能:1.判断系统位数:2.读取注册表,读取应用名称.displayName就是程序与功能里面展示的应用名称.3.读取txt文件:4.执行exe文件,安装程序. 注意:1.文本编码方式要用A ...
- java resources 路径_Java工程读取resources中资源文件路径问题
正常在Java工程中读取某路径下的文件时,可以采用绝对路径和相对路径,绝对路径没什么好说的,相对路径,即相对于当前类的路径.在本地工程和服务器中读取文件的方式有所不同,以下图配置文件为例. 本地读取资 ...
- java wav 波形_java读取wav文件(波形文件)并绘制波形图的方法
本文实例讲述了java读取wav文件(波形文件)并绘制波形图的方法.分享给大家供大家参考.具体如下: 因为最近有不少网友询问我波形文件读写方面的问题,出于让大家更方便以及让代码能够得到更好的改进,我将 ...
- java xml 反射_Java 读取XML文件以及Java 的反射机制实现
Java 读取XML文件以及Java 的反射机制实现 代码部分 import java.io.File; import javax.xml.parsers.DocumentBuilder; impor ...
- JAVA实现环形缓冲多线程读取远程文件
2019独角兽企业重金招聘Python工程师标准>>> 如果用HttpURLConnection类的方法打开连接,然后用InputStream类获得输入流,再用BufferedInp ...
- JAVA获取项目工程下的文件
JAVA获取 工程下的文件 其实很简单主要是理解编译路径 ①class.getResource public static void main(String[] args) {WordTest w ...
- Java使用GeoTools轻松读取shapefile文件内容
日常GIS开发中难免会将一些shapefile文件数据读取存入数据库中,很多人第一想到的就是使用GeoTools操作和显示地图的开源Java 代码库. 生活捉弄人,因为项目需要对于从来没有做过GIS相 ...
- 超简单:解析 yml 类型(application.yml)配置文件 、springboot 工程读取 yml 文件中的值
方法三是我觉得最简单的. 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 工程结构: 2. 我要读取 application.yml 中属性 ...
- Java通过javacsv实现读取csv文件数据
目录 1.添加依赖 2.测试的csv文件 3.实际调用代码 4.返回的数据格式 1.添加依赖 <!--csv文件操作--> <dependency><groupId> ...
最新文章
- 带通采样定理简单记录
- 当 HTTP 连接池遇上 KeepAlive 时
- 如何选择合适的垃圾收集器
- 关于第三周——回顾与修正
- 《C++ Primer 5th》笔记(4 / 19):表达式
- Online Coding开发模式 (通过在线配置实现一个表模型的增删改查功能,无需写任何代码)
- python编程计算器_Python编程之计算器/字符及界面
- Struts2学习(三)———— 输入校验和拦截器
- 《惢客创业日记》2020.03.16-31(周一) 国家有难,匹夫有责(三)
- 开源大数据周刊-第90期
- 电子行业ERP解决方案
- 深入理解CatBoost
- 如何系统地学习网络安全
- PDF文件如何修改背景颜色,PDF文件怎么改部分底色
- Unity对H5小游戏开发的支持——Project Tiny
- DySAT: Deep Neural Representation Learning on Dynamic Graph via Self-Attention Networks
- 阿里云服务器的网站被提示该内容禁止访问的解决办法
- 大二学期总结(我的机器人开发之路)
- ros msg文件数组定义与使用
- 斗鱼App产品体验报告
热门文章
- MQL4 判断double 数值近似值相等
- ISCE-stamps的sbas时序insar基本流程(一):ISCE的预处理
- 网络流量在线分析系统的设计与实现+winpcap+vscode+mingw
- Java、JSP农产品销售系统的设计与实现
- 微信小程序----最最最最最简单的日历做法
- 根治脱发和白发的中成药
- 四川大学计算机跨专业考研,四川大学计算机好考研吗?四川大学考研874专业怎么复习?...
- 电磁鼓采样器含拓展 – Native Instruments Battery 4.1.6 WiN-MAC
- linux卸载db2客户端,Linux平台下DB2 UDB V8.1的安装与卸载 -电脑资料
- flowable工作流 流程变量_业务流程 BPM、工作流引擎、Flowable、Activiti