LETTER in LIBRARY
Posted newhappy98
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LETTER in LIBRARY相关的知识,希望对你有一定的参考价值。
MORRISON\'S LETTER, PART 1
我大概已经有 30 多年没有写过正经的信了。
我这儿没有打字机,所以,抱歉,你得花点时间对付我这鸡爪子的字了。
我不像你,精力充沛,也不是那种出类拔萃的家伙。
听说你要回 Red Grave,我不知道能帮你些什么……
不过,我毕竟干的是这方面的行当,至少我还能给你一点线索。
我不知道这些线索对你来说有多少帮助,但……
至少比无头苍蝇要强点,你说呢?
头一次见到 Dante 的时候,他还用着另一个名字: Tony Redgrave。
听到这个名字,你应该会有点想法。
Tony Redgrave……
Red Grave City……
这是个巧合?
还是有更深隐情在里面?说实话,我不知道。
如果你要抓这条线索,你或许能了解到真相。
就是因为这个,我才决定把自己对 Dante 所知的一切对你倾囊相授。
平常我是不会这么干的,小子。
你最好心存感激。
MORRISON\'S LETTER, PART 2
Dante 还在用 Tony Redgrave 这个名字的时候,有那么一个地方叫做“波比的酒窖(Bobby\'s Cellar)”……
一个满是赏金猎人、为发财搏命的预备士兵等等一帮乌烟瘴气家伙聚会的地方,当然,我们的老朋友 Tony 也会在这里现身。
时不时的,像其他那些想要发笔横财的小混混和低等生物一样,他会出现在这里。
这就是波比的酒窖。
那时候,像我一样的人也有很多。
我们这些人个个都知道来这种人多地方,把手上的情报作为珍贵的货物四处兜售。
而更重要的是,搞掂这些活儿能够让钱包鼓起来。
要知道,Tony 这小子替我赚了不少钱。
尽管如此,这家伙却总是待在破产边缘。
每次干活,他都会把自己的枪搞坏。
是的,现在来看,这很正常;
但在那个时候,我简直被他给惊呆了。
我曾揣测过,这家伙到底是打出去多少子弹才能每次干活就弄坏一对手枪?
MORRISON\'S LETTER, PART 3
不久之后,我听到风声,老朋友 Tony 开了一家自己的店子:
Devil May Cry
我找到了那里,用 "Dante" 这个名字去寻人 - 之前说过,这是他的真名。
然后呢,我们就开始了一段美好的友谊。
我向来不是个相信存在恶魔之类玩意儿的人,但和 Dante 待在一起,还真让我眼界大开。
我也就是在那段时间认识了 Lady。
Dante 对钱不怎么看重,时不时地,Lady 会给他点好处,甚至于还会给他点活儿(当然,总是在抱怨)。
他们一直以这种方式相处,看得出他们有着某种共通的过去。
这种感觉,不像有浪漫气息或其他无聊关系。
是的,这就像是……
他们都经历过对方经历过的事情。
我曾尝试旁敲侧击弄清他们的共同经历,但这两个家伙逃避问题跟躲子弹一样机灵。
这份过去不是他们会轻松提起的事情。
一次,Lady 说漏嘴,提到“切断纽带”一类的事儿。
她那时醉醺醺的……
提起她和 Dante 都曾杀死自己的家人。
Dante 杀了他的兄弟……
而 Lady 则是父亲。
我不确定这是否就是全部的真相。
我认为自己可以挖深一点……
毕竟这是我的行当。
但我并不是那种为了满足自己的好奇心,强行挖掘朋友过去的混球;
所以,我就把这事归咎于喝得太多……
就我而言,不过是喝高之后的胡言乱语罢了。
MORRISON\'S LETTER, PART 4
几年后,Dante 去了一座小岛 - 去解决一位年轻尤物带来的案子。
似乎是魔界的帝王在试着打破封印,闯进我们的世界;
而她则希望 Dante 去阻止……
就这样,Dante 动身了,坐着我为他订的船去了 Mallet Island。
而那个陪他同去的尤物就是 Trish。
不得不说,第一眼看到 Trish,我吓了一跳……
她简直是 Dante 已故母亲的翻版。
我确实没见过 Dante 的母亲 - 但你知道吗,彼时 Dante 曾在自己桌上放着相框,里面嵌着他母亲的相片?
我猜你绝对想不到这点。
后来我才发现 Trish 的真实恶魔本性。
她是引诱 Dante 前往 Mallet Island,让 Dante 死于彼地的诱饵 - 一个为了恶魔帝王的降临而生的可悲造物。
那个时候,Dante 桌上的相片众人皆知。
我认为,大概利用 Dante 的孝心才是恶魔帝王这么做的原因。
在那座岛上,一切都尘埃落定……
Dante 解决了恶魔帝王,和 Trish 一起回到了 Devil May Cry。
我不知道在那里发生了什么……
打听这种事情超出了我的本分。
重要的是,Dante 打倒了魔界的统治者。
时光飞逝,这次,V 现身之后,猜猜他给 Dante 带来的是什么任务?
“击败复活的恶魔帝王……”
Dante 接了这活,去了 Red Grave City。
“恶魔帝王”时不时正在那里等着他出现?
这个“恶魔帝王”是不是就是 Mallet Island 上那个?
估计你我想法相差无几。
怀疑这件事与 Dante 出身有关的猜测,我无论如何也没法挥去。
毕竟这就是我们谈论的 "Tony Redgrae" 啊……
现在,全部的始末我已经全盘推出。
如果我有新的发现,我一定会联系你,所以,千万不要死。
小子,我们之间的美好友谊正在萌芽。
你和不要让我失望。
java.lang.UnsatisfiedLinkError: no XXX in java.library.path
其中涉及的测试源码如下:
For those who didn‘t install Java with default settings, a systematic way for solving JNI class path problem is:
1> include "System.out.println(System.getProperty("Java.library.path")); " in your "static" block, right before loading the class.
2>
run your program and not surprisingly you got the err again, but this
time with java.library.path info for your system. (it‘s important since
this path name varies among systems).
3> cp your libxxx.so into the java.library.path
Java一般使用两个path:classpath 和 java.library.path
classpath是指向jar包的位置
java.library.path是非java类包的位置如(dll,so)
解决办法:
第一种方法,在代码里设置环境变量
第二种方法:执行时在vm arguments里添加-Djava.library.path= /usr/local/lib,例如java -Djava.library.path=. xxx(xxx是某个类文件的名字,不包括后缀)
第三种方法:设置环境变量java.library.path
1:Linux下的系统变量LD_LIBRARY_PATH来添加java.library.path
2:Windows下设置哪个环境变量???????????????????
如果你上面看不懂的话就继续向下面看:
1、 在你载入jni类之前 放入“System.out.println( System.getProperty("java.library.path"));
2、运行你的程序你将获得java.library.path指向的目录
3、拷贝你的libxxx.so到java.library.path指向的某个目录下面。
注意:
Linux下:一定要将Linux下的共享库(我暂且这么叫:)命名成libxxx.so的形式,"xxx"是你在System.loadLibrary("xxx")中用到的加载库名称。
Windows下:一定要将Windows下的共享库(我暂且这么叫:)命名成xxx.dll的形式(没有前边的lib三个字母),"xxx"是你在System.loadLibrary("xxx")中用到的加载库名称。
查了其他的资料:
也可以通过设置LINUX下的系统变量LD_LIBRARY_PATH来添加java.library.path,只要在启动~/.bashrc中添加如下代码然后重新登录shell,就可以将动态库放在当前目录下运行你的jni程序了。
export LD_LIBRARY_PATH=.:..:$LD_LIBRARY_PATH
另外也可以通过如下I‘m new to JNI. I see there are several ways to set JVM to look for libraries dll, so, etc.
System.setProperty("java.library.path", ".");
System.loadLibrary("hello");
That‘s when UnsatisfiedLinkError
java.lang.UnsatisfiedLinkError: no hello in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682)
at java.lang.Runtime.loadLibrary0(Runtime.java:822)
at java.lang.System.loadLibrary(System.java:992)
at HelloWorld.main(HelloWorld.java:17)
以上是关于LETTER in LIBRARY的主要内容,如果未能解决你的问题,请参考以下文章
[LeetCode in Python] 17 (M) letter combinations of a phone number 电话号码的字母组合
no leveldbjni64-1.8 in java.library.path
jupytext library using in jupyter notebook