【问题标题】:What is the relationship between an import statement and its classpath?import 语句与其类路径之间有什么关系?
【发布时间】:2016-06-18 12:28:10
【问题描述】:

我很难理解 gradle 文件中的 import 语句与实际 Java 代码中的最终 import 语句之间的关系。例如,如果我有...

import com.google.android.maps.GeoPoint;

那么类路径可能是什么?

buildscript {
    repositories {
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'xxxxxx'
    }
}

在 .net 中,导入语句与配置中的引用相匹配。所以如果我有

Zoo.animals.monkeys

那么我的导入将是......

Zoo.animals.monkeys.chimps

【问题讨论】:

  • 不确定,但我认为没有关系。 import 语句引用一个类或要导入的包,classpath 引用一个库名和版本
  • 无。导入语句没有类路径。你的问题没有意义。

标签: java android android-studio android-gradle-plugin


【解决方案1】:

Import 与 CLASSPATH 无关。它可以节省您的击键次数,允许您在键入源代码时使用短类名称而不是完整名称(例如 ResultSet 而不是 java.sql.ResultSet)。

CLASSPATH 在编译时很重要,它允许编译器解析静态类型,在运行时当类加载器在第一次引用时将您的字节码带入 JVM。

您无法根据包推断出任何关于 CLASSPATH 的信息。如果该类在 JAR 中怎么办? CLASSPATH 将引用 JAR,而不是包。

我编写的大多数应用程序都使用我使用 Maven 加载的第 3 方 JAR。我维护 pom.xml,而不是 CLASSPATH。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-26
    • 1970-01-01
    • 2018-08-31
    • 2019-02-20
    • 2014-02-19
    • 2023-04-08
    • 1970-01-01
    • 2012-10-06
    相关资源
    最近更新 更多