标签: classpath

How to configure .dll file in Java?

I am using Jacob jar file in my java application.

This Jacob jar file comes with a .dll file. I have added Jacob jar file to my classpath. But when I execute my application a runtime error occurs as

"couldn't load jacob-1.15-M3-x86.dll file"
Run Code Online (Sandbox Code Playgroud)

How can I load this .dll file?

Edited:=================================================================================

I had set the "path" environment varaible to the dir that contains my .dll file and loading that .dll file as follows

static {
    System.loadLibrary("jacob-1.15-M3-x86.dll");
}
Run Code Online (Sandbox Code Playgroud)

but the following …

java dll classpath jacob

8
推荐指数
2
解决办法
3万
查看次数

JPA persistence.xml类路径是否位于?

这就是我想要做的.我在Web应用程序中使用JPA持久性,但我有一组单元测试,我想在容器外运行.

我的主应用程序位于我的主应用程序persistence.xml的META_INF文件夹中,它在容器(Glassfish)中运行良好.

我persistence.xml在META-INF我的test-classes目录的文件夹中放了第二个.这包含一个单独的持久性单元,我只想用于测试.在eclipse中,我将此文件夹放在类路径中比默认文件夹更高,它似乎工作.

现在,当我直接从命令行运行maven构建并尝试运行单元测试时,将persistence.xml忽略覆盖.我可以META-INF在maven生成的test-classes目录的文件夹中看到覆盖,我希望maven测试使用这个文件,但事实并非如此.我的Spring测试配置覆盖,以类似的方式实现了工作.

我很困惑是否persistence.xml位于类路径中.如果是,我的覆盖应该像弹簧覆盖一样工作,因为maven surefire插件解释 "[测试类目录]将包含在测试类路径的开头".

我错误地预测了persistence.xml文件的位置吗?

我可以(并且已经)在生产persistence.xml文件中创建第二个持久性单元,但是将测试配置放入此生产文件中会感觉很脏.关于如何实现我的目标的任何其他想法都是受欢迎的.

java maven-2 unit-testing jpa classpath

8
推荐指数
1
解决办法
1万
查看次数

SVN:忽略操作方法和操作方法?

在我看来,在.classpath等文件中添加属性svn:ignore是个好主意.我同时使用Windows(work,ugh)和Linux开发环境,每次与存储库同步时,它都会覆盖我正在处理的任何一台机器上的.classpath.

我尝试在Team Sync透视图中右键单击.classpath文件,但svn:ignore选项显示为灰色.

任何想法我可能:1.从源代码控制中获取此项,2.将其添加到忽略列表?

任何其他文件智能添加到此列表?

subclipse svn classpath svnignore heterogeneous

8
推荐指数
1
解决办法
1万
查看次数

运行junit测试时的ZipException

我一直试图让ant执行一些用junit编写的测试.任何建议将不胜感激.我对ant和Java都很陌生,所以请耐心等待.

作为一个快速总结,我正在做的是尝试让ant执行一个非常简单的测试,类路径看起来很好,考虑到ant -debug的输出.我在类路径中明确提到类文件的测试时遇到空测试错误.此外,我得到一个ZipException,我不知道那是什么.

这是我正在尝试运行的测试用例:

package testmanagment;
import junit.framework.*;

public abstract class EasyTest extends TestCase
{

    public EasyTest(String name)
    {
        super(name);
    }

    protected void setUp()
    {}

    protected void testSeeMee() throws Exception
    {
        assertTrue(true);
    }

    protected void testSeeMeetoo() throws Exception
    {
        assertTrue(true);
    }   
}
Run Code Online (Sandbox Code Playgroud)

包中有一些测试,这只是为了看看为什么一切都失败了.它失败了ZipException.

这是我的make文件的一小部分:

  <property name="src" value="src/"/> 
     <property name="build" value="build/"/>  
     <property name="test" value="${build}test/"/>
     <property name="testreportsdir" value="${test}reports/"/>
     <property name="classdir" value="${build}classes/"/>
     <property name="lib" value="lib/"/> 

    <path id="files-classpath">  
        <fileset dir="lib/" >  
            <include name="*.jar"/>  
        </fileset>  
    </path> 

    <path id="tests-classpath">
        <path refid="files-classpath"/>
        <pathelement location="${classdir}/"/>
    </path>

    <path id="tests-runpath"> …
Run Code Online (Sandbox Code Playgroud)

java ant junit exception classpath

8
推荐指数
1
解决办法
3671
查看次数

无法从类路径加载jks文件

我用公共和私有RSA密钥创建了一个JKS文件.当我使用外部路径(如c:/file.jks)加载此文件时,程序就像魅力一样执行.但是,如果我尝试从类路径加载此相同的文件,我得到此异常:

java.io.IOException: Invalid keystore format
Run Code Online (Sandbox Code Playgroud)

这是用于加载jks的代码:

 KeyStore keyStore = KeyStore.getInstance("JKS");
 InputStream stream=this.getClass().getResourceAsStream("/lutum.jks") ;
 keyStore.load(stream,passe);
Run Code Online (Sandbox Code Playgroud)

唯一的区别是我在外部加载时使用FileInputStream和完整路径.我做错了什么?

encryption classpath jks java-8

8
推荐指数
1
解决办法
1万
查看次数

IntelliJ 13 Tomcat配置类org.springframework.web.util.Log4jConfigListener的应用程序侦听器时出错

我正在尝试使用IntelliJ 13及其内置的Tomcat部署插件运行Java/Spring/Hibernate/Ivy应用程序.我正在使用Tomcat 8.0.9,但我也尝试使用Tomcat 6.0.39.当我试图启动Tomcat时,我正在创建一个工件; 爆炸性战争更加具体.我正在使用Ivy来解决我的依赖关系,这是因为它是一个不使用Maven的遗留应用程序.愚蠢,我知道.

当尝试使用任何版本的Tomcat从IntelliJ内部运行此应用程序时,我在"服务器"日志中收到以下消息:

C:\dev\apache-tomcat-6.0.39\apache-tomcat-6.0.39\bin\catalina.bat run
[2014-07-01 05:33:09,056] Artifact Kiosk:war exploded: Server is not connected. Deploy is not available.
Using CATALINA_BASE:   "C:\Users\{username}\.IntelliJIdea13\system\tomcat\Unnamed_Kiosk_4"
Using CATALINA_HOME:   "C:\dev\apache-tomcat-6.0.39\apache-tomcat-6.0.39"
Using CATALINA_TMPDIR: "C:\dev\apache-tomcat-6.0.39\apache-tomcat-6.0.39\temp"
Using JRE_HOME:        "C:\apps\Java\jdk1.7.0_51"
Using CLASSPATH:       "C:\dev\apache-tomcat-6.0.39\apache-tomcat-6.0.39\bin\bootstrap.jar"
Connected to the target VM, address: '127.0.0.1:57131', transport: 'socket'
Jul 01, 2014 5:33:09 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\apps\Java\jdk1.7.0_51\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\apps\Java\jdk1.7.0_51\bin;C:\Apps\TortoiseSVN\bin;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\dev\apache-tomcat-6.0.39\apache-tomcat-6.0.39;C:\dev\apache-maven-3.2.1-bin\apache-maven-3.2.1\bin;C:\dev\SlikSvn\bin;.;;.;;. …
Run Code Online (Sandbox Code Playgroud)

java tomcat classpath intellij-idea classnotfoundexception

8
推荐指数
2
解决办法
2万
查看次数

在 macOS (Mac OS X) 上打印 Java 类路径

在命令行上,如何查看构成当前Java 类路径的所有文件夹和文件?

Oracle教程echo $CLASSPATH说要在类 Unix 系统上使用。但在装有 Java 8 的 Mac (El Capitan) 上却什么也不打印。我记得,默认情况下,CLASSPATHmacOS 上不使用环境变量。

我看到一些诸如此类的问题显示了类路径的设置,但我只想验证类路径。

是否有一些简单的方法可以从命令行检查当前的类路径?

java macos classpath

8
推荐指数
1
解决办法
2万
查看次数

无法使用 Git Bash 运行 Java 应用程序

我下载了SymmetricDS,一种用于数据库复制的工具,并尝试在我的 Windows7 机器上运行它。该程序可以从命令行启动,它适用于 Windows 终端。但是我总是更喜欢Git Bash命令行的东西。sym但是,当我运行命令时,出现错误:

Error: Could not find or load main class org.jumpmind.symmetric.SymmetricLauncher
Run Code Online (Sandbox Code Playgroud)

这个工具是用Java编写的。我安装了 JDK 1.8。Git的Bash的继承所有环境变量,包括$PATH和$JAVA_HOME从Windows。但是为什么它会抱怨找不到类?

该sym命令实际上是在运行以下命令:

exec "$SYM_JAVA" $SYM_OPTIONS -cp "$CLASSPATH" org.jumpmind.symmetric.SymmetricLauncher "$@"
Run Code Online (Sandbox Code Playgroud)

所有的 jars 都位于lib应用程序的根目录下。类路径定义在sym.service.conf内部conf目录中:

# Java Classpath
wrapper.java.classpath.1=patches
wrapper.java.classpath.2=patches/*
wrapper.java.classpath.3=lib/*.jar
wrapper.java.classpath.4=web/WEB-INF/lib/*.jar

# Application main class and arguments
wrapper.app.parameter.1=org.jumpmind.symmetric.SymmetricLauncher 
Run Code Online (Sandbox Code Playgroud)

我echo $CLASSPATH在exec打印出类路径之前添加了它,它似乎确实让所有这些都正确:

/c/Users/dnj0109/Apps/symmetric-server-3.8.29/patches:
/c/Users/dnj0109/Apps/symmetric-server-3.8.29/patches/*:
/c/Users/dnj0109/Apps/symmetric-server-3.8.29/lib/*:
/c/Users/dnj0109/Apps/symmetric-server-3.8.29/web/WEB-INF/lib/*
Run Code Online (Sandbox Code Playgroud)

java git bash classpath

8
推荐指数
1
解决办法
2819
查看次数

如何在 JDK 9 或更高版本中获取引导类路径

我有一个读取系统属性的类加载器应用程序 sun.boot.class.path

但是我在 JDK 9 的发行说明中发现此属性已被删除。

 System.getProperty("sun.boot.class.path"); // In JDK 9/10 this returns null 
Run Code Online (Sandbox Code Playgroud)

但是我还是想在JDK 10中检索这个属性值,怎么做呢?

我期待如下值:

/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/classes
Run Code Online (Sandbox Code Playgroud)

供参考:

我不想使用该-Xbootclasspath选项。只需要路径值。

java classpath bootclasspath java-9 java-module

8
推荐指数
1
解决办法
4105
查看次数

为什么 Android Studio 和 gradle 可以使用不同的类路径进行单元测试?

我有一套单元测试,当通过./gradlew :project:testDebugUnitTests. 但是,当我在 Android Studio 中运行它们时,我遇到了一个模糊的问题,我最终使用与此 Gradle 命令不同的类路径追踪到了似乎是 Android Studio 的问题。

有问题的依赖项是 Byte Buddy,我遇到了此错误的一个变体,该变体已在 1.9.0 中修复。运行./gradlew dependencies表明,1.9.10将在我的构建中使用,但是当我看到在命令行是Android Studio中使用运行我的测试中,该-classpath参数包含两个1.8.10和1.9.10和1.8.10版本列表中的第一个。

我真的对可能导致这种情况的原因感到困惑,因为我原以为 Android Studio 会从其 Gradle 集成中获取类路径。我喜欢任何关于为什么会发生这种情况或如何进一步调试的线索。

java android classpath gradle android-studio

8
推荐指数
0
解决办法
154
查看次数