Java 9 Junit 4依赖关系超出模块范围

时间:2018-10-02 14:32:16

标签: junit4 java-9

这是我的第一个问题,所以如果我做的一切都不正确,请留意。

我是我们大学的一名软件开发实习生。我当前的任务是将我们的框架从Java 8迁移到当前的Java版本(Java 11)。

这个想法是:我们将整个项目打包在一个单一的JAR中,即学生仅需引用该单一的JAR,而不用导入其他库的成千上万个。 因此,我必须将他们需要的所有东西都放入该JAR内,这也意味着JUnit。 那就是它的样子: ProjectStructure 该模块信息是:

module org.sopra {
requires commons.cli;
requires gson;
requires guava;
requires java.compiler;
requires java.desktop;
requires java.sql;
requires javafx.base;
requires javafx.controls;
requires javafx.fxml;
requires javafx.graphics;
requires log4j.api;
requires opencsv;
requires org.mockito;
requires org.xmlpull.v1;
requires reflections;
requires xstream;

requires transitive java.hamcrest;
requires transitive junit;

opens org.sopra.api.util.scenarioloader to xstream;
opens org.sopra.internal.gui.view to guava, javafx.fxml;
opens org.sopra.internal.model to guava;

exports org.sopra.api;
exports org.sopra.api.command;
exports org.sopra.api.exercises.exercise1;
exports org.sopra.api.exercises.exercise2;
exports org.sopra.api.exercises.exercise3;
exports org.sopra.api.exercises.exercise4;
exports org.sopra.api.exercises.exercise5;
exports org.sopra.api.exercises;
exports org.sopra.api.model;
exports org.sopra.api.model.consumer;
exports org.sopra.api.model.producer;
exports org.sopra.api.util.scenarioloader;
exports org.sopra.solutions.exercise1;
exports org.sopra.solutions.exercise2;
exports org.sopra.solutions.exercise3;
exports org.sopra.solutions.exercise4;
exports org.sopra.solutions.exercise5;
exports org.sopra.solutions.exercise6;
}

您可以在图片中看到,一切正常。但是现在出现了问题:当我使用Gradle构建所有内容并在新项目中进行测试时,我将无法再访问Junit:JUnit not accessible

所以,我现在的问题是,如何在学生项目中访问Junit?

0 个答案:

没有答案