小编Dre*_*nis的帖子

从jar中读取资源文件

我想从我的jar中读取资源,如下所示:

File file;
file = new File(getClass().getResource("/file.txt").toURI());
BufferredReader reader = new BufferedReader(new FileReader(file));

//Read the file
Run Code Online (Sandbox Code Playgroud)

并且它在Eclipse中运行时工作正常,但是如果我将它导出到jar中运行它就会出现IllegalArgumentException:

Exception in thread "Thread-2"
java.lang.IllegalArgumentException: URI is not hierarchical
Run Code Online (Sandbox Code Playgroud)

而且我真的不知道为什么,但经过一些测试我发现如果我改变了

file = new File(getClass().getResource("/file.txt").toURI());
Run Code Online (Sandbox Code Playgroud)

file = new File(getClass().getResource("/folder/file.txt").toURI());
Run Code Online (Sandbox Code Playgroud)

然后它的工作正好相反(它适用于jar而不是eclipse).

我正在使用Eclipse,我的文件夹在一个类文件夹中.

java resources jar file embedded-resource

207
推荐指数
5
解决办法
28万
查看次数

试图在JENKINS工作时,maven中的"Peer Not Authenticated"

当我尝试在Jenkins中运行maven作业时,构建不成功.

控制台中的错误消息显示以下内容:

[INFO] ------------------------------------------------------------------------
Downloading: http://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-       resources-plugin/2.5/maven-resources-plugin-2.5.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.640s
[INFO] Finished at: Tue Aug 20 11:21:36 EST 2013
[INFO] Final Memory: 6M/16M
[INFO] ------------------------------------------------------------------------
mavenExecutionResult exceptions not empty
message : Plugin org.apache.maven.plugins:maven-resources-plugin:2.5 or one of its     dependencies could not be resolved: Failed to read artifact descriptor for         org.apache.maven.plugins:maven-resources-plugin:jar:2.5
cause : Failed to read artifact descriptor for org.apache.maven.plugins:maven-    resources-plugin:jar:2.5
Stack trace : 


org.apache.maven.plugin.PluginResolutionException: Plugin org.apache.maven.plugins:maven-resources-plugin:2.5 or one of its dependencies could not …
Run Code Online (Sandbox Code Playgroud)

maven

14
推荐指数
1
解决办法
3万
查看次数

Java PreparedStatement和ON DUPLICATE KEY UPDATE:如何知道是否插入或更新了行?

有下面的代码,我怎么知道execute()方法是否导致插入或更新?:

Connection c = DriverManager.getConnection(connectionString);

PreparedStatement st = c.prepareStatement("INSERT INTO `table`(`field1`) VALUES (?) ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id);");

st.setString(1,"some value");
st.execute();
Run Code Online (Sandbox Code Playgroud)

提前致谢.

java mysql sql database jdbc

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

java ×2

database ×1

embedded-resource ×1

file ×1

jar ×1

jdbc ×1

maven ×1

mysql ×1

resources ×1

sql ×1