intellij idea 添加动态 user library(java.lang.VerifyError)

原创 2014年06月10日 11:28:27


使用IDEA的时候有时要用到eclipse的user library,由于两个IDE导入library的方式不同导致我们找不到导入user library的方法。
查IDEA的官方文档,找到方法如下:
首先要导入user library :


Eclipse IDEA
Workspace Project
Project Module
Project-specific JRE Module JDK
User library Global library
Classpath variable Path variable
Project dependency Module dependency
Library Module library
那么我们在IDEA下要导入的就是Global library。
导入后加到module中,libray有个选项叫做Scope ,有如下值Compile  Test  Runtime Provided

                        Scope Use this drop-down to affect the classpath for the various build phases.
  • Compile: This is the default option. If it is selected, the dependency is resolved and is available in classpath during the compilation and run phases.
  • Test: Select this option, if this dependency is only required for tests, and should not be available in normal application use. If this scope is selected, the dependency is resolved and is available in classpath during the test compilation and run phases.
  • Runtime: This scope indicates that the dependency is only required when running the application, and should not be available in classpath during the compilation.
  • Provided: If this option is selected, the dependency is resolved and is available in classpath during the compilation, but is not included in classpath at runtime. This dependency scope is useful, when you have some container that provides the dependency at runtime.                  

由于我们要加入的是动态加载的库,所以要求编译的时候不加载,只有在运行用到的时候调用。
所以Scope选择Provided选项。
默认是Compile,编译的时候会随module进行编译,此处要改为Provided

搞定。

现在有个需求是这样。module A要用到user library,module A 使用上述方法将user library 导入,并将order 放置在Andorid SDK的上面。
module B要Dependency A
在mudule B中把A作为依赖库导入,Scope选择Provided ,出现如下错误
 java.lang.VerifyError

是因为库的导入方式不对,
mudule B中把A作为依赖库导入,Scope选择Compile 。搞定


Intellij IDEA入门到精通(一)

-
  • 1970年01月01日 08:00

不同系统与程序修改java.library.path的位置

以下路径为为网上收集。 Linux环境 系统变量LD_LIBRARY_PATH来添加java.library.path Windows 在系统->高级系统设置->环境变量里,在...
  • quqibing001
  • quqibing001
  • 2016-04-20 16:16:14
  • 9942

动态链接库的创建和使用

动态链接库文件在windows平台下往往以.dll为后缀,而在linux平台则一般以.so为后缀,so是shared object的缩写。 LINUX系统中,为了让动态链接库能被系统中其它程序共享,其...
  • yiluohan0307
  • yiluohan0307
  • 2016-05-19 18:12:54
  • 644

IntelliJ IDEA平台下JNI编程(一)—HelloWorld篇

JNI(Java Native Interface),出于学习JNI的目的,为了能够更方便快速地运行程序。本文的是在IDEA中进行,而不在AndroidStudio,这样能够对NDK的工作过程有个更深...
  • huachao1001
  • huachao1001
  • 2016-12-30 11:30:10
  • 9170

JAVA调用动态链接库DLL之JNative学习

JAVA调用动态链接库DLL的方法有:JNI(Java Native Interface),JInvoke,JNative(Java to native interface),JNI是JAVA自身提供...
  • testcs_dn
  • testcs_dn
  • 2014-05-25 22:51:05
  • 37030

java.lang.UnsatisfiedLinkError:no in java.library.path解决办法

在用exe4j打包java工程后,在其他电脑运行结果出现了  java.lang.UnsatisfiedLinkError:no  in java.library.path的错误,刚开始以为是...
  • fym0121
  • fym0121
  • 2014-12-15 17:44:39
  • 43890

eclipse jni报错:UnsatisfiedLinkError: no *** in java.library.path

在eclipse中使用jni技术,在java工程主类中声明native本地动态链接库函数,并在static静态代码块中加载名为”jni_so_test“的本地动态链接库。 使用jav...
  • wangyuchun_799
  • wangyuchun_799
  • 2015-07-21 23:51:16
  • 11422

IntelliJ IDEA 2016配置SpringMVC及简单开发

这里最好是用Download,试过Use library,觉得少些东西。如果下载不了。可以试试设置http proxy,选择auto-detect proxy settings。下载完成后,项目创建成...
  • changchou
  • changchou
  • 2016-12-18 02:22:48
  • 728

Iintellij Idea中项目引入library的方法

1、如图,AndroidDemo为自己的项目,appcompat为android的library项目,按照图中标示的顺序将其他要引入的library项目import进来,然后在AndroidDemo的...
  • rznice
  • rznice
  • 2015-02-27 16:51:34
  • 31782

如何用IDEA创建SpringMVC项目

使用IDEA创建springMVC项目 4.配置下载选项,将Level设为Global Library,下次再创建springMVC项目时即可选择Use libr...
  • freshwind_li
  • freshwind_li
  • 2016-11-11 16:03:19
  • 1980
收藏助手
不良信息举报
您举报文章:intellij idea 添加动态 user library(java.lang.VerifyError)
举报原因:
原因补充:

(最多只允许输入30个字)