日期:2014-05-20  浏览次数:20705 次

获取jar内部文件路径问题!
我把package com.ecc.test打成test.jar test里有一个class 和 一个 test.so文件

我现在方法 System.load("test.so的路径")

那我现在这个路径怎么取??



------解决方案--------------------
把jar放在WEB-INF/lib,直接取类名:com.ecc.test
------解决方案--------------------
给你个例子,对照着看。

Java code
    public static void main(String[] args) throws IOException {
        String resourcePath = "/javax/sql/rowset/rowset.properties";
        // resource URL
        System.out.println(Thread.currentThread().getClass().getResource(resourcePath));
        // resource stream
        InputStream is= Thread.currentThread().getClass().getResourceAsStream(resourcePath);   
        // output
        BufferedReader br=new BufferedReader(new InputStreamReader(is));
        String s;
        while ((s = br.readLine()) != null) {
            System.out.println(s);
        }
    }

------解决方案--------------------
取到了路径,你也未必能访问啊。。。
URL url = this.getClass().getResource("路径名/test.so"); 

如果你只是希望读取该文件内容的话,可以:
InputStream is = this.getClass().getResourceAsStream("路径名/test.so");
------解决方案--------------------
jni吧 我记得是不能放到jar包里