linux环境怎么测试java代码

linux环境怎么测试java代码,第1张

项目必备:

虚拟机:VMware Workstation (已安装linux的 CentOS6.5版本)

项目:java web项目 (必须在本地部署编译后选择项目的webRoot,改为ROOT(ROOT包含下面四个关键文件),放到tomcat下的webapps下即可,因为tomcat启用一个工程的时候,就是发布了除了JSP以外的,所有已被编译过的java文件,所以只能放在本地部署生成编译后的class文件)。

java环境配置:配置JDK

服务器:tomcat

数据库:MySQL

基本思路:(特别注意各处的编码设置

1.配置java环境(下载jdk并配置环境变量)

2.下载并安装tomcat (设置tomcat编码)

3.安装mysql并导入sql(注意:mysql客户端和服务器端编码设置,必须设置完再导入sql,这个折腾了好久)

4.项目导入并修改数据库连接配置

5.启动mysql,启动tomcat,访问即可!

VMware tools小介绍:

现在的centOS已安装了VMware tools (实现主机和虚拟机之间文件的共享拖拽功能),其余项目所需都没有安装。只有在VMware虚拟机中安装好了VMware Tools,才能实现主机与虚拟机之间的文件共享,同时可支持自由拖拽的功能,鼠标也可在虚拟机与主机之前自由移动(不用再按ctrl+alt),且虚拟机屏幕也可实现全屏化。

首先要安装JDK,再要配制环境变量,以下以Bash shell为例 在终端下用VI打开配置文件,方法:vi .bash_profile按i键进入到插入模式,不要改变原文件,添加$JAVA_HOME=JDK 的安装路径如/opt/jdk

1. 我认为这个问题是与调用System.loadLibrary(字符串)LD_LIBRARY_PATH。使用LoadLibrary(“富”)将看着你的java.library.path的libfoo.so。如果发现任何libfoo.so你会得到这个错误。 现在,如果你只设置了LD_LIBRARY_PATH,你想要的原始符号将自动被拾起的连接器,所以你不需要设置-Djava.library.path。 在我的经验与swig在GDAL项目,这个错误其实是无害的,因为LD_LIBRARY_PATH设置,这将正常工作。 我会使用-Djava.library.path和调用调用LoadLibrary explitly CodeGo.net,原因是,如果你决定要使用的webstart部署你的应用程序,你将需要显式地调用LoadLibrary来让你的本地库拾起。 当月食我遵循达夫给您编辑在构建路径Libraries选项卡下的jar本地库的说明。只需再次,这只是设置在幕后java.library.path。

2. 你可以试试-Djava.library.path=actual.so行吧? 在Windows上,我也有类似的问题,第三方库,JNI封装的DLL,它的DLL。我的项目已经在lib目录下的DLL,这样我添加到库的路径(如:PATH=%PATH%./lib变,一切都开始工作。

3. 据我知道的Eclipse没有关系'的LD_LIBRARY_PATH。 要树立正确的本地库路径的最简单的方法就是去 项目属性->Java构建路径->库 然后展开或者JRE的系统库条目或(如果有的话)的 jar文件的本地库, 选择“本地库位置”,然后单击“编辑...”并选择你的库。实际上它并设置-Djava.library.path变量,以便你必须包括这行,如果你开始从外面蚀你的程序的文件夹。

4. 这可能是因为你只需要找到运行配置对话框中合适的地方放-Djava.library.path=...选项。随口说说我想你想-D在选项卡上的“VM定义,而如果要定义LD_LIBRARY_PATH就是那张在标签上。Eclipse的让你把东西在那里他们赢得'你觉得什么反正我库这样的地方以前,如果我有机会,我会仰望我做了什么,在这里编辑我的答案。 另一件事,试图与LD_DEBUG玩。您可以设置变量LD_DEBUG的事情(尝试所有),然后Linux加载程序会泄露的各种关于什么一个应用程序试图加载,它在寻找的东西,等等。当然,这种预先假定您启动Eclipse从行,所以你可以同时设置ENV增值经销商,看到了loader的诊断,但就系统而言,当你从Eclipse中运行你的应用,你的应用程序仅仅是Eclipse是干什么的,所以任何的库装载行为cocoa见以这种方式。

5. 是否有你的两个库依赖于任何其他库?如果是这样,你需要确保他们也可以访问到JVM。 请注意,手动设置“-Djava.library.path”似乎清除预设的库路径。 所以,用下面的代码:public class LibTest {

public static void main(String[] args) {

String property = System.getProperty("java.library.path")

StringTokenizer parser = new StringTokenizer(property, ":")

while (parser.hasMoreTokens()) {

System.err.println(parser.nextToken())

}

}

}

从eclipse与Java 1.6.0_14输出启动:/opt/java/jre/lib/i386/client

/opt/java/jre/lib/i386

/opt/java/jre/../lib/i386

/opt/java/jre/lib/i386/client

/opt/java/jre/lib/i386

/usr/lib/xulrunner-devel-1.9.0.11

/usr/lib/xulrunner-devel-1.9.0.11

/usr/java/packages/lib/i386

/lib

/usr/lib

但是,当我设置的JVM ARG“-Djava.library.path=/ tmp目录/”我只得到:/tmp/

如果您要手动设置java.library.path这也许可以解释为什么LDD的作品从行,但你的,所以不会从eclipse/ java的。 你可以试试不设置,而不是调用System.loadLibrary java.library.path System.load的绝对路径到库中。这可能使JVM能够找到你,所以,默认的路径寻找它的依赖时。 当然,如果这是,那么你也可以尝试打开JNI调试输出与“-verbose:当使用JNI”上线。这可能给您的线索来解决问题。

6. 是LD_LIBRARY_PATH环境工作

7. 加入这个答案可能是它可以在AIX机器,我们需要设置LIBPATH变量,而不是LD_LIBRARY_PATH。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/5928728.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-08
下一篇 2023-03-08

发表评论

登录后才能评论

评论列表(0条)

保存