【问题标题】:Java 2 SDK and Java Tools looking for Packages寻找包的 Java 2 SDK 和 Java 工具
【发布时间】:2012-06-20 19:11:26
【问题描述】:

假设我有一个类 TreansferBook,它是 org.cadenhead.library 包的一部分

我读到 Java 2 SDK 和 Java 工具在以下位置寻找包:

1 输入 java 命令的 org\cadenhead\library 子文件夹

第一个问题是,在 Eclipse 中,修改 java 命令输入位置的选项在哪里?

我什至不知道你会如何在命令行上执行此操作;会是这样吗

C:> 光盘

目录会是工作区和项目目录吗?并且是这个目录中的包

C:\\java org\cadenhead\library

2 ClassPath 设置中任何文件夹的 org\cadenhead\library 子文件夹

我知道类路径告诉 jvm 类和包的位置。同样,正如我上面所问的,这是 workspace/project/ 的子文件夹吗?

3 类路径中 java 归档文件 (JAR) 的 org\cadenhead\library 子文件夹

最后,这是什么?

【问题讨论】:

  • 在 Eclipse 中,Java 项目应该已经有一个根源文件夹——您不需要设置任何东西。什么是什么?
  • 所以包放在那个根目录还是放在其他目录。如果是这样,包是否可以包含来自不同项目中不同目录的类?
  • 包植根于项目的任何源目录,源目录在项目设置中配置。是的,项目可以依赖于其他项目,但我不知道这可以有多细化,例如,我不知道您是否可以说“项目 A 依赖于项目 B 中的类 x、y、z”。跨度>
  • @DaveNewton 我的意思不是依赖于其他项目的项目,我的意思是使用另一个项目中的类的项目中的包。
  • 依赖于其他项目的类的项目是依赖于其他项目的项目。如果它不是另一个 Eclipse 项目,那么您可以将项目 A 中的类导入项目 B,或创建外部依赖项。开始查看项目构建路径和库选项;这将比在这里等待人们回答问题要快。

标签: java eclipse classpath package


【解决方案1】:

使用 Eclipse 之类的 IDE 时,您无需进行任何设置。 IDE 已经知道您的代码在哪里,并且可以适当地设置类路径。这不是您需要担心的事情,它是使用 IDE 的好处之一。

从哪里运行 java 并不重要。重要的是 java 命令的类路径设置为包含类文件的根目录(在您的情况下为 /org 的父目录)以及您可能拥有的任何依赖 jar 文件。

【讨论】:

    【解决方案2】:

    关于类加载和 Eclipse 的一些事情:

    1. JVM(和编译器)在每个目录和 CLASSPATH 中列出的每个 JAR 文件中查找类。例如,如果您有一个类路径,如:CLASSPATH=c:\workspace\myproject;some_library.jar,那么 VM 将在

      中查找类 org.cadenhead.library.SomeClass
      1. c:\workspace\myproject\org\cadenhead\library
      2. 在 JAR 文件中包含的目录 org\cadenhead\library 中。
    2. 在 Eclipse 中,类路径上的默认目录是工作空间内的“bin”目录,以及所有链接的项目和 JAR 文件。

    3. 调用“java”命令的位置是项目目录本身。

    【讨论】:

      猜你喜欢
      • 2020-01-27
      • 2011-05-22
      • 2020-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多