【问题标题】:Java Compiling File Which Imports from a JAR Error从 JAR 错误导入的 Java 编译文件
【发布时间】:2018-04-21 05:03:01
【问题描述】:

我正在尝试将第 3 方库中的一个/多个类导入到我的计算机程序中。我正在使用 Windows 计算机。当我最初使用 NetBeans 时一切正常,但我已经开始使用命令提示符。我无法再编译其中一个 .java 文件。这是我的目录的样子:

代码文件夹

  • jarLibrary(保存我所有的 .jar 文件)

  • db_diff_checker_gui2(保存我所有的 .java 文件)

我从 jarLibrary 文件夹运行以下命令:

javac -cp ".;jarLibrary\jackson-annotations-.0.1.jar";".;jarLibrary\jackson-annotations-2.0.1.jar";".;jarLibrary\jackson-annotations-2.0.1.jar";".;jarLibrary\mysql-connector-java-5.1.44-bin.jar" db_diff_checker_gui2/*.java

但是,我收到以下错误消息作为响应:

import com.fasterxml.jackson.databind.*;
^
..\db_diff_checker_gui2\FileConversion.java:31: error: cannot find symbol
                ObjectMapper mapper = new ObjectMapper();
                ^
  symbol:   class ObjectMapper
  location: class FileConversion
..\db_diff_checker_gui2\FileConversion.java:31: error: cannot find symbol
                ObjectMapper mapper = new ObjectMapper();
                                          ^
  symbol:   class ObjectMapper
  location: class FileConversion
..\db_diff_checker_gui2\FileConversion.java:48: error: cannot find symbol
                ObjectMapper mapper = new ObjectMapper();
                ^
  symbol:   class ObjectMapper
  location: class FileConversion
..\db_diff_checker_gui2\FileConversion.java:48: error: cannot find symbol
                ObjectMapper mapper = new ObjectMapper();
                                          ^
  symbol:   class ObjectMapper
  location: class FileConversion
..\db_diff_checker_gui2\FileConversion.java:49: error: cannot find symbol
                mapper.configure( DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false );
                                  ^
  symbol:   variable DeserializationFeature
  location: class FileConversion
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
6 errors

我已经尝试了几种不同的方法来运行这个命令,但似乎没有任何东西可以解决这个错误。我查看了this question 以获取命令的格式。

感谢您的帮助!

编辑:重复的 jar 文件是导致错误的原因。我正在复制他们的文件路径,当我复制 jar 文件的路径时,我似乎不小心。结果,当我编译时,并不是所有必要的文件都存在。

【问题讨论】:

  • 为什么-cp 参数中间有引号?以及为什么要包含“。”目录多次?为什么您显然要包含 3 次注释库?
  • 除了上述之外,您还缺少类路径中的 jackson-databind 和 jackson-core JAR。
  • 感谢您指出重复的 jar 文件。我是从那里复制它们的,我在复制 jar 文件的路径时似乎不小心,所以它没有所有必要的 jar 文件。

标签: java cmd import jar


【解决方案1】:

Stephen C 指出,当我复制了所有的 jar 文件时,我不小心,我复制了其中的几个而遗漏了其他的。结果,当我尝试编译 java 文件时,它没有所有被引用的类,因此无法编译。添加缺少的 jar 文件后,所有内容都按应有的方式编译和运行。

【讨论】:

    猜你喜欢
    • 2015-10-03
    • 1970-01-01
    • 1970-01-01
    • 2021-05-31
    • 2013-12-17
    • 2014-12-05
    • 2020-04-16
    • 2015-12-24
    • 2021-11-16
    相关资源
    最近更新 更多