无法解决 JADE 依赖性

问题描述 投票:0回答:2

我正在尝试将 JADE 添加为 Maven 依赖项。

我添加了存储库和属性。

<repositories>
    <repository>
        <id>tilab</id>
        <url>https://jade.tilab.com/maven/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.tilab.jade</groupId>
        <artifactId>jade</artifactId>
        <version>4.6.0</version>
    </dependency>
</dependencies>

无法在项目玉上执行目标:无法解析项目org.example:jade:jar:1.0-SNAPSHOT的依赖关系:无法在离线模式下访问tilab(https://jade.tilab.com/maven/)并且神器 com.tilab.jade:jade:j ar:4.6.0 之前没有下载过

当我尝试导入依赖项时,maven 返回我:

无法找到请求目标的有效认证路径

maven pom.xml agents-jade
2个回答
1
投票

快速修复

创建
~/.mavenrc

MAVEN_OPTS="-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true"

打开终端

  • 更改为项目文件夹。
  • 奔跑
    mvn clean package
  • 您会看到下载消息

我的测试代码

├── pom.xml
└── src
    └── main
        └── java
            └── org
                └── example
                    └── Main.java

Main.java并不重要

package org.example;

public class Main {
    public static void main(String[] args) {
        System.out.println("Hello world!");
    }
}

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>org.example</groupId>
    <artifactId>tmpmaven</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <repositories>
        <repository>
            <id>tilab</id>
            <url>https://jade.tilab.com/maven/</url>
        </repository>
    </repositories>
    <dependencies>
        <dependency>
           <groupId>com.tilab.jade</groupId>
           <artifactId>jade</artifactId>
           <version>4.3.3</version>
        </dependency>
    </dependencies>
</project>

打开终端

mvn clean ackage

$ mvn clean package
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------------< org.example:tmpmaven >------------------------
[INFO] Building tmpmaven 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from tilab: https://jade.tilab.com/maven/com/tilab/jade/jade/4.3.3/jade-4.3.3.jar
Downloaded from tilab: https://jade.tilab.com/maven/com/tilab/jade/jade/4.3.3/jade-4.3.3.jar (2.7 MB at 317 kB/s)
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ tmpmaven ---
[INFO] 
[INFO] --- maven-

如何找到这个答案?

尝试使用
curl
下载
jade-4.6.0.pom

$ curl https://jade.tilab.com/maven/com/tilab/jade/jade/4.6.0/jade-4.6.0.pom
curl: (60) SSL certificate problem: unable to get local issuer certificate
...

失败,错误消息

SSL certificate problem

curl add -k 跳过 ssl 问题

$ curl -k https://jade.tilab.com/maven/com/tilab/jade/jade/4.6.0/jade-4.6.0.pom
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
...

添加

-k
,忽略SSL即可成功访问。

然后找到
How to tell Maven to disregard SSL errors (and trusting all certs)?

如何告诉 Maven 忽略 SSL 错误(并信任所有证书)?

寻找答案。

  • 创建~/.mavenrc
  • 或在
    mvn
    命令后添加参数
    -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true

这是快速修复

我不在乎为什么 ssl 有错误,只需跳过 ssl


0
投票

您可以从 Jade 的 fork

获取可用的 Maven 存储库

要添加到您的 pom 的存储库

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

添加到 pom 的依赖项

<dependency>
    <groupId>com.gitlab.jade-project</groupId>
    <artifactId>jade</artifactId>
    <version>master-SNAPSHOT</version>
</dependency>
© www.soinside.com 2019 - 2024. All rights reserved.