标签: classpath

Classpath在linux下不起作用

任何人都知道为什么这个命令在Windows中正常工作但在Linux中我得到一个ClassNotFoundException game.ui.Main

java -cp ".;lib/*" game.ui.Main -Xms64m -Xmx128m
Run Code Online (Sandbox Code Playgroud)

我的文件夹结构如下所示:lib/ - Jars游戏/ - 类文件

这是最新的Java 6.

java linux classpath

58
推荐指数
3
解决办法
4万
查看次数

将Log4j.properties放入Eclipse项目的正确位置在哪里?

我应该在Eclipse项目中添加log4j.properties文件以使其按预期工作?

java eclipse log4j classpath

58
推荐指数
6
解决办法
18万
查看次数

尝试使用java.exe -jar运行我的jar时出现NoClassDefFoundError ...出了什么问题?

我有一个应用程序,我正在尝试将其包装到jar中以便于部署.当作为一组可从CLASSPATH访问的类运行时,应用程序编译并运行正常(在Windows cmd窗口中).但是当我在我的类中运行并尝试在同一cmd窗口中使用java 1.6运行它时,我开始获得异常:

C:\dev\myapp\src\common\datagen>C:/apps/jdk1.6.0_07/bin/java.exe -classpath C:\myapp\libs\commons -logging-1.1.jar -server -jar DataGen.jar
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
    at com.example.myapp.fomc.common.datagen.DataGenerationTest.<clinit>(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    ... 1 more
Run Code Online (Sandbox Code Playgroud)

有趣的是,违规的LogFactory似乎是在commons-logging-1.1.jar中,它位于指定的类路径中.jar文件(是的,它确实存在):

C:\dev\myapp\src\common\datagen>dir C:\myapp\libs\commons-logging-1.1.jar
 Volume in drive C is Local Disk
 Volume Serial Number is ECCD-A6A7

 Directory of C:\myapp\libs

12/11/2007  11:46 AM            52,915 commons-logging-1.1.jar
           1 File(s)         52,915 bytes
           0 Dir(s)  10,956,947,456 bytes free
Run Code Online (Sandbox Code Playgroud)

commons-logging-1.1.jar文件的内容:

C:\dev\myapp\src\common\datagen>jar -tf C:\myapp\libs\commons-logging-1.1.jar
META-INF/
META-INF/MANIFEST.MF
org/ …
Run Code Online (Sandbox Code Playgroud)

java jar classpath executable-jar

56
推荐指数
3
解决办法
12万
查看次数

从命令提示符处执行带有多个类路径库的jar文件

我有一个Maven项目,它生成一个jar文件并将所有依赖项复制到target/lib文件夹.我想在客户端的机器(windows)上执行这个项目.所以,我复制myproject.jarC:\xyz文件夹和所有依赖项到C:\xyz\lib文件夹.如何从客户端的命令提示符执行此项目?我试图java -cp lib\*.jar -jar myproject.jarC:\xyz文件夹使用,但它抛出以下错误.

Exception in thread "main" java.lang.NoClassDefFoundError: lib\commons-codec-1/3/jar
Caused by: java.lang.ClassNotFoundException: lib\commons-codec-1.3.jar
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: lib\commons-codec-1.3.jar.  Program will exit.
Run Code Online (Sandbox Code Playgroud)

我想如果我在classpath(如java -cp lib\dep1.jar;dep2.jar)中指定所有依赖项,它将解决问题,但我不想这样做,因为我已经有40个库,并且它可能会在将来的版本中增长.有一个更好的方法吗?

java jar classpath maven

54
推荐指数
4
解决办法
14万
查看次数

CLASSPATH中的WEB-INF?

WEB-INF文件夹CLASSPATH是Java Web应用程序的吗?

java classpath web-inf

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

如何在Eclipse中的类路径上放置文件?

正如本文档所述,"例如,如果将此jndi.properties文件放在类路径上",但如果我使用Eclipse,如何将.properties文件放在我的类路径上?

eclipse classpath

53
推荐指数
3
解决办法
19万
查看次数

IntelliJ找不到类路径测试资源

我遇到一个问题,IntelliJ 13.1.4在运行单元测试时无法ServiceLoadersrc/test/resources我的模块目录中找到文件.

请在回答之前注意我已完成以下所有操作:

  1. 该模块是Gradle项目,如果我运行gradle test单元测试运行正常.
  2. 我过去在IntelliJ中成功运行了这个单元测试,它找到了模块.(也许是IntelliJ的早期版本?)
  3. 我已经仔细检查了IntelliJ模块设置,并且该src/test/resources目录被标记为测试资源目录.(见下面的截图.)
  4. 我在类中转储了单元测试类的类加载器的类路径; 它有build/classes/test/build/classes/java目录,但也build/resources/test/没有build/resources/main/.
  5. 我点击了按钮刷新所有Gradle项目.

关于还有什么可能导致IntelliJ在这里失败的任何想法?


我的模块配置的屏幕截图,显示"测试资源文件夹"设置.

我的测试资源文件夹已正确设置.

java classpath intellij-idea

51
推荐指数
4
解决办法
5万
查看次数

Java项目:应该将.classpath .project文件提交到存储库吗?

我应该检查我的.project和.classpath文件吗?

我的朋友告诉我,我应该只检查.java文件和build.xml以保证可移植性.他说".classpath会让你在不同环境下的可移植性降低得多..project完全是你当地的日食设置"

我同意他,但部分同意.

- 不检入.project文件会降低我的开发效率(我不能简单地从目录"导入"项目代码)

- 如果我的build.xml是小心写的,那么不检入.classpath文件似乎对我(?)没问题.

有人想在这里分享他们的经历吗?

java eclipse versioning ant classpath

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

Maven无法解析同一多模块项目中模块的依赖关系

运行命令时如

mvn dependency:build-classpath
Run Code Online (Sandbox Code Playgroud)

要么

mvn exec:java
Run Code Online (Sandbox Code Playgroud)

Maven无法解析我的某个模块与另一个模块的依赖关系.

[错误]无法在项目解析器-app上执行目标:无法解析项目project_group的依赖项:A:jar:0.1-SNAPSHOT:找不到工件project_group:B:jar:0.1-SNAPSHOT

项目结构如下:

/pom.xml
/A/pom.xml
/B/pom.xml
Run Code Online (Sandbox Code Playgroud)

父母pom如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>project_group</groupId>
  <artifactId>parent</artifactId>
  <packaging>pom</packaging>
  <version>0.1-SNAPSHOT</version>
  <name>parent</name>

  <modules>
    <module>A</module>
    <module>B</module>
  </modules>
Run Code Online (Sandbox Code Playgroud)

第一个子模块(未能解决依赖关系的模块):

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>parent_group</groupId>
    <artifactId>parent</artifactId>
    <version>0.1-SNAPSHOT</version>
  </parent>
  <artifactId>A</artifactId>
  <packaging>jar</packaging>
  <name>A</name>

  <dependencies>
    <dependency>
      <groupId>parent_group</groupId>
      <artifactId>B</artifactId>
      <version>0.1-SNAPSHOT</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

第二个子模块(依赖项):

  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>parent_group</groupId>
    <artifactId>parent</artifactId>
    <version>0.1-SNAPSHOT</version>
  </parent>
  <artifactId>B</artifactId>
  <packaging>jar</packaging>
  <name>B</name>
Run Code Online (Sandbox Code Playgroud)

java jar classpath pom.xml maven

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

如何在groovy脚本中包含jar?

我有一个groovy脚本需要jar中的库.如何将其添加到类路径?我希望脚本可执行,所以我#!/usr/bin/env groovy在脚本的顶部使用.

java groovy jar classpath

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