对于Maven来说,我是一个“noob”。我过去曾经使用过ANT,但还不够Maven让它“坚持”我。
这是我的问题。我正在尝试编写一个java程序,它将解析JSON文件以获取相关信息,然后使用仅上载CSV文件的专有工具生成CSV文件以进行上载。我使用Maven构建了项目。该程序将使用Google Gson库,我将其列为我的POM文件中的依赖项(包括在下面)。当我执行“mvn compile”时,Maven返回一个错误,指示Maven应该通过其依赖管理功能解析的包不存在。
具体错误:
<html>
<head>
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.3.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#name').val('Name1');
});
function clickMe() {
alert('click me called');
}
</script>
</head>
<body>
Person Name:
<input type="text" id="name" data-bind="value:personName">
<input type="submit" value="Save" onClick="javascript:clickMe()" />
</body>
</html>
这是我的POM文件:
"error: package com.google.code.gson does not exist"
我的java应用程序类中有一个import语句,根据Maven下载我的依赖项,如果我对Maven的理解是正确的,那么它应该是可解析的。这是import语句。
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.acumen.app</groupId>
<artifactId>CatalogConverter</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>CatalogConverter</name>
<url>http://maven.apache.org</url>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.3.1</version>
<scope>compile</scope>
</dependency>
</dependencies>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project>
所以我的问题是,为什么Maven不会编译我的代码?我认为我没有错误配置导入和POM文件。虽然,这总是值得商榷的!我可以去我当地的Maven“repo”,看看这些罐子实际上已经下载了。我很确定错误是“用户错误”,所以我在哪里犯错误?
我不相信“提供”是正确的依赖关系,因为成功编译需要jar文件,必须下载(因为没有容器服务器或其他机制将为我解决它们)。应用程序将作为jar本身执行。
答案 0 :(得分:0)
在您的gson版本中必须是
import com.google.gson.Gson;