JavaRush /Java 博客 /Random-ZH /使用 Maven 连接库
Дмитрий Яковенко
第 35 级
Москва

使用 Maven 连接库

已在 Random-ZH 群组中发布
使用 Maven 连接库 - 1 问题 JavaRush 使用了 JDK8 中的一些包,然后它们被删除了。例如,用于游戏的 JavaFX,或用于 XML 处理的 JAXB。因此,如果您使用的是新版本的 JDK,那么您就会遇到问题...但即使您使用的是旧版 JDK8,那么您也会遇到问题...在任务 4 Collections 中,您将需要连接 Jackson处理 JSON。当然,一切都可以手动连接,但这很乏味。您必须手动下载它们,将它们添加到项目中... 解决方案 实际上,需要 Maven 来自动化此例程。0) 我强烈建议制作 JavaRush 项目的备份副本,否则你永远不知道... 1) 首先,让我们将 Maven 添加到我们的项目中。右键单击4.JavaCollections模块,选择Add Framework Support...Maven,[Ok] 2)现在我们找到pom.xml文件,在其中手动添加一个块
<dependencies>
</dependencies>
就在 </version> 之后 3) 然后我们开始添加我们需要的包。如果我们需要 Jeckson,我们谷歌“jackson maven dependency”我们找到这样的答案:http://tutorials.jenkov.com/java-json/jackson-installation.html 我们看到对于 Jeckson,我们需要 3 个依赖项(artifactId) :jackson-core、jackson-annotations、jackson-databind 还有其他依赖项,但我们还不需要它们;我们会在需要时添加它们。现在,我们在此站点上查找这 3 个依赖项 - https://mvnrepository.com/ 我们在那里输入工件的名称,找到大多数人使用的工件或最新版本。并将依赖文本复制到我们的 pom.xml 中。4)总的来说,我们的pom.xml变成了这样:
<?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>groupId</groupId>
    <artifactId>4.JavaCollections</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.12.3</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.12.3</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.12.3</version>
        </dependency>
    </dependencies>


</project>
太棒了,右键单击它并选择 Maven/Reimport。5)现在Jeckson在我们的程序中,对象的红色名称消失了。但是代码停止编译,它写了一个错误:
Error:java: error: release version 5 not supported
由于某种原因,当将 Maven 引入项目时,支持的 Java 版本下降到 5...我们需要修复此问题: File\Settings\Build, Execution, Deployment\Compiler\Java Compiler 模块中显示:对于我们的模块 4.JavaCollections - 您需要使用 Java5 进行编码...我们在此窗口中删除我们的模块。但这还不是全部,然后打开 File\Project Structure\Modules ,我们选择我们的模块 4.JavaCollections。接下来,选择语言级别 - 项目默认选项卡。5.1)我从第5点找到了如何解决问题。只需将以下内容添加到pom.xml:
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>
现在 Maven 将我们的模块的字节码版本设置为 JDK 8,我们对此感到满意。我没有删除第五点,我把它留作一般信息。这样就可以了解在 IDEA 中可以更改哪些 JDK 版本 6) 说到项目默认值。JavaRush 在 JDK 8 上运行。如果您有版本 11(或更高版本),那么您会经常咒骂验证器,它不会通过您的代码。因为您将编写在 JDK 9+ 中输入的代码,所以一切都会为您工作,并且验证器会给您一个错误。因此,转到:File\Project Structure\Project 我们指示您当前的 JDK 版本,并在其下方指示语言级别 - 严格为 8 - Lambda、类型注释等。有什么好处 - 你将看到 JDK 9+ 的功能,但如果你尝试添加它们,IDEA 会诅咒。例如,“aaa”.lines(); - 你可以写(IDEA 将替代它,尽管它会以红色突出显示),你也可以失败 - 研究内部。但它不会让你编译。7) 我们需要做的最后一件事是更正 4.JavaCollections 包内的路径。Maven 重新制作了它们,我们按原样返回它们: a) 转到 File\Project Structure\Modules b) 选择 4.JavaCollections\Source c) 删除 target、rosources、test d) 将源文件夹放在 src 上 e) 移动e) 主文件夹被删除。一般来说,我们按照 Maven 之前的方式进行操作,类比 3.JavaMultithreading 8) 现在我们自己添加剩余的依赖项,例如 JAXB。如果您需要添加日志记录,我的文章可以提供帮助。我们将其添加到简历中——Maven。你太美了!如果有帮助 - 喜欢,订阅,响铃!)))
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION