Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Ubuntu安装Junit_Java_Ubuntu_Junit - Fatal编程技术网

Java Ubuntu安装Junit

Java Ubuntu安装Junit,java,ubuntu,junit,Java,Ubuntu,Junit,我正试图在Ubuntu上安装Junit。我已经让Java开始工作,这样我就可以编译Java文件了。然而,junit给了我一些问题(无法让基本测试用例工作以证明安装工作正常) 以下是我所做的: sudo apt-get install junit 现在,当我键入哪个junit时,它会给我/usr/bin/junit 类似地,通过另一个堆栈交换帖子,我发现我的junit.tar文件 这是: 我将junit.jar文件的路径添加到我的类路径中,因为网站() 说明“确保JUnit安装目录位于类路径上”

我正试图在Ubuntu上安装Junit。我已经让Java开始工作,这样我就可以编译Java文件了。然而,junit给了我一些问题(无法让基本测试用例工作以证明安装工作正常)

以下是我所做的:

sudo apt-get install junit
现在,当我键入
哪个junit
时,它会给我
/usr/bin/junit

类似地,通过另一个堆栈交换帖子,我发现我的junit.tar文件 这是:

我将junit.jar文件的路径添加到我的类路径中,因为网站() 说明“确保JUnit安装目录位于类路径上”

我在.bashrc中将上面的第二条路径添加到我的类路径中

因此,当我运行
echo$CLASSPATH
时: 我得到
/usr/share/java/junit.jar:/usr/bin

但是,当我尝试运行
java org.junit.runner.JUnitCore org.junit.tests.AllTests

为了测试我是否正确安装和配置了JUnit,我遇到以下错误:

Error: Could not find or load main class org.junit.runner.JUnitCore 
Caused by: java.lang.ClassNotFoundException: org.junit.runner.JUnitCore

我是一名初学者,正在学习Ubuntu,因此非常感谢您的帮助。

正如Mark在评论中提到的,使用Gradle管理您的软件包。在IntelliJ中,转到应用程序的
build.gradle
。在dependencies对象中添加以下内容

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
}

问题是您已经安装了JUnit3.8(请参阅)。JUnit3.8不包含任何包
org.JUnit.*
,因为这些包是在JUnit4中引入的。理论上,您可以通过使用
apt-get
(将安装JUnit 4.12)安装包来解决这个问题

但这是错误的方法,您应该学习如何使用Maven或Gradle(或两者都使用),这将自动为您下载依赖项,并减少一些编译的繁琐工作(当然,作为交换,您可以获得更高的学习曲线)

或者,如果您确实想手动执行此操作,请养成从项目网站下载依赖项的习惯,并在编译和执行期间显式指定类路径。依赖系统包管理器来实现这一点是错误的方法(错误的版本、应用程序/项目之间的不同版本要求、不在存储库中的库等)。依赖于
CLASSPATH
环境变量是非常脆弱的(错误的版本,在类路径上有库的意外影响等等),而且由于大多数执行Java应用程序的方法甚至都不使用它,学习它是错误的


TLDR,真的,您应该学习Maven或Gradle的基础知识。

您通常不会像那样安装Java库。您可以使用Maven或Gradle并指定项目的依赖项,这些依赖项将在构建过程中自动下载。另外,大多数执行或编译Java应用程序的方法都会忽略CLASSPATH环境变量。另外,您确定apt get没有安装一些古老版本的JUnit,它不包含
org.JUnit.runner.JUnitCore
?例如,JUnit 3.x不包含任何
org.JUnit.
packages鉴于Ubuntu存储库既有
JUnit
又有
junit4
,我想说变化很大,这是一个古老的版本。但是,请停止使用apt get安装Java库。学习使用Maven或gradle,或从项目网站手动下载适当的JAR,养成在命令行上显式指定类路径的习惯,而不是依赖于
CLASSPATH
环境变量。非常感谢您提供的有用意见和答案,在我前进的过程中,我一定会考虑这些选择!
dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
}