![](/img/trans.png)
[英]Error: "package com.fasterxml.jackson.databind does not exist" when compiling Java file
[英]How to fix "error: package com.fasterxml.jackson.databind does not exist" when compiling using command line in Intellij (Java)
我一直在嘗試使用javac Main.java
格式編譯我的 Java 代碼,但由於某種原因,編譯器說我的包不存在,事實上它在項目結構中,這是一個屏幕截圖:
確切的錯誤是: Main.java:1: error: package com.fasterxml.jackson.databind does not exist import com.fasterxml.jackson.databind.ObjectMapper;
我的代碼在我的 Main.java 中如下所示:
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import java.nio.file.Files;
import java.nio.file.Path;
import java.time.Duration;
import java.time.Instant;
import java.time.ZoneId;
public final class Main {
public static void main(String[] args) throws Exception {
if (args.length != 1) {
System.out.println("Usage: Main [file path]");
return;
}
UdacisearchClient client =
new UdacisearchClient(
"CatFacts LLC",
17,
8000,
5,
Instant.now(),
Duration.ofDays(180),
ZoneId.of("America/Los_Angeles"),
"555 Meowmers Ln, Riverside, CA 92501");
Path outputPath = Path.of(args[0]);
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.registerModule(new JavaTimeModule());
objectMapper.writeValue(Files.newBufferedWriter(outputPath), client);
System.out.println("Wrote to: "+ outputPath.toAbsolutePath());
UdacisearchClient deserialized = objectMapper.
readValue(Files.newBufferedReader(outputPath), UdacisearchClient.class);
System.out.println("Deserialized: " + deserialized);
}
}
整個代碼應該像這樣javac Main.java
然后java Main client.json
。 當我嘗試通過轉到Run
, Edit Configurations
並通過添加client.json
作為我的程序的參數來編譯它時,它就像一個魅力,我的對象在client.json
文件中被序列化為一個 json 對象但是當我使用編譯時命令行它說沒有找到包。 我嘗試使用的任何其他依賴項都會發生相同的錯誤。 應該注意的是,當我從我的依賴項中實例化對象時,它看起來很好,因為與這些對象相關的import
行不是紅色的。 所以我想我的問題在於我的命令行編譯或我的 Intellij 環境。 我已經嘗試了許多在線提出的解決方案,但問題仍然存在。 我需要一些幫助。
事實證明,解決方案很簡單。
首先編譯lib文件夾和Main.java中的庫:
javac -cp ".;lib/*" Main.java
然后運行我的Main類(包含我的main函數):
java -cp ".;lib/*" Main
我缺少點“ . ”和分號; !
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.