我有一个新的环境,我试图在IntelliJ中创建一个简单的java项目,其中包含一ScoreCalculator.java将导入com. google. gson的www.example.com类。这应该很简单,但我错过了一些东西。
我做了一个新的maven项目(包括pom.xml中的这个依赖项),当我尝试javac ScoreCalculator.java
时,我得到:您com.google.gson.stream不存在!
通过阅读,我找到了这个son-2.8.6.jar文件所在的jar文件(在我的.m2目录中),并将CLASSPATH更新为该文件夹路径:
Dianes-MBP:java dkaplan$ echo $CLASSPATH
/Users/dkaplan/.m2/repository/com/google/code/gson/gson/2.8.6
我的pom文件有:
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>mightier-maven</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>7</source>
<target>7</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.6</version>
</dependency>
</dependencies>
</project>
到目前为止,我的小测试程序除了我需要的导入之外什么都没有:
import java.io.File;
import java.io.FileReader;
import java.nio.file.Path;
import com.google.gson.*;
import com.google.gson.stream.JsonReader;
public class ScoreCalculator {
public static void main(String args[]){
System.out.println("Hello world");
}
}
目录设置如下所示:
但是当我尝试这样编译时,我得到了错误:
Dianes-MBP:java dkaplan$ javac ScoreCalculator.java
ScoreCalculator.java:5: error: package com.google.gson.stream does not exist
import com.google.gson.stream.JsonReader;
^
ScoreCalculator.java:4: error: package com.google.gson does not exist
import com.google.gson.*;
^
2 errors
注意:我也在IntelliJ中用一个新的Gradle项目尝试了同样的事情,我从同一个命令中得到了同样的错误,所以我认为有一些设置(或目录组织?我在这里缺少的部分。
我还应该做什么/检查?
3条答案
按热度按时间0ve6wy6x1#
从MacOS中存在
ScoreCalculator.java
的目录执行这些命令。javac -cp /Users/dkaplan/.m2/repository/com/google/code/gson/gson/2.8.6/gson-2.8.6.jar ScoreCalculator.java
java -cp /Users/dkaplan/.m2/repository/com/google/code/gson/gson/2.8.6/gson-2.8.6.jar ScoreCalculator
q0qdq0h22#
使用此依赖项
jchrr9hc3#
我试了很多次,但当我使用
mvn clean install
没有错误。但是当我使用
mvn dependency:tree or mvn dependency:list
时,我的项目中缺少了Gson和Sprite jar,经过大量的尝试和错误,我能够解决这个问题。我的解决方案是将GSON和Sprite的依赖项放在dependencies xml标记内的pom.xml中的任何其他依赖项之前,因为我将它们放在最后。