• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            misschuer

            常用鏈接

            統計

            積分與排名

            百事通

            最新評論

            centos上運行jni

            import java.io.File;
            import java.io.FileOutputStream;
            import java.io.InputStream;
            import java.util.StringTokenizer;


            public class Test {

                public static native void hello();
                    static final String LIBFILENAME = "/home/my/java/libtest.so";

                static {
                    //System.loadLibrary(LIBFILENAME);

                    try {
                        // 獲取到java.library.path  及系統變量中Path中的內容
                        String libpath = System.getProperty("java.library.path");
                        if (libpath == null || libpath.length() == 0) {
                            throw new RuntimeException("java.library.path is null");
                        }
                        //javaBinPath   jdk的bin目錄D:\Program Files\Java\jdk1.6.0_11\bin
                        String javaBinPath = null;
                        StringTokenizer st = new StringTokenizer(libpath,
                                System.getProperty("path.separator"));
                        if (st.hasMoreElements()) {
                            javaBinPath = st.nextToken();
                        } else {
                            throw new RuntimeException("can not split library path:"
                                    + libpath);
                        }
                        // 把dll文件寫入到java.library.path中該dll放在ConvertWord2HM相同目錄下,這個可以是你的類名
                        InputStream inputStream = Test.class.getResourceAsStream(
                                LIBFILENAME);
                        final File dllFile = new File(LIBFILENAME);
                        if (!dllFile.exists()) {
                            FileOutputStream outputStream = new FileOutputStream(dllFile);
                            byte[] array = new byte[1024];
                            int bytesRead = -1;
                            while ((bytesRead = inputStream.read(array)) != -1) {
                                outputStream.write(array, 0, bytesRead);
                            }
                            outputStream.flush();
                            outputStream.close();
                        }  
                        // 動態加載dll
                        System.load(dllFile.getPath());
                        // 在虛擬機關閉的時候刪除dll 這里看著用吧
                        // dllFile.deleteOnExit();
                    } catch (Throwable e) {
                        throw new RuntimeException("load Convert.dll error!", e);
                    }

                }
                public static void main(String[] args) {
                    Test.hello();
                }
            }


            這個文件是在目錄/home/my/java下的
            javac Test.java
            javah Test  //生成Test.h
            然后自己寫Test.cpp
            .java .h .cpp 這些文件名字一定要一樣
            g++ -I$JAVA_HOME/include -I$JAVA_HOME/include/linux -fPIC -shared -o libtest.so Test.cpp  // 轉成你想要的文件 我這里是libtest.so 也可以是libtest.dll, 看你代碼調用什么。
            java Test 就可以運行了
            用System.loadLibrary() 一直加載不了 只能網上找了個加載lib的代碼

            posted on 2015-05-07 17:14 此最相思 閱讀(339) 評論(0)  編輯 收藏 引用 所屬分類: Java

            中文字幕乱码久久午夜| 国产真实乱对白精彩久久| 亚洲午夜精品久久久久久app| 久久久人妻精品无码一区| 蜜桃麻豆www久久国产精品| 日本WV一本一道久久香蕉| 麻豆成人久久精品二区三区免费| 亚洲国产精品18久久久久久| 精品综合久久久久久888蜜芽| 国产免费久久精品丫丫| 人妻中文久久久久| 久久国产精品99国产精| 久久久精品视频免费观看| 伊人久久大香线蕉av一区| 久久精品国产清自在天天线| 无遮挡粉嫩小泬久久久久久久| 国产午夜精品久久久久九九| 久久亚洲欧美国产精品| 久久亚洲中文字幕精品一区| 青青草国产成人久久91网| 日韩精品久久无码人妻中文字幕 | 亚洲国产成人精品无码久久久久久综合 | 久久天天躁狠狠躁夜夜不卡| 国产亚洲精品美女久久久| 色老头网站久久网| 久久精品女人天堂AV麻| 久久久久一区二区三区| 狼狼综合久久久久综合网| 久久亚洲AV无码精品色午夜| 精品国产婷婷久久久| 狠狠色噜噜狠狠狠狠狠色综合久久| 99久久国产宗和精品1上映| 久久亚洲国产精品123区| 久久国产精品免费一区二区三区| 久久精品国产亚洲AV无码娇色| 久久人人爽人人人人爽AV | 国内精品九九久久久精品| 久久国产色av免费看| 亚洲精品乱码久久久久久 | 久久无码中文字幕东京热| 久久这里只精品99re66|