首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >线程"main“java.lang.NoClassDefFoundError中由ClassNotFoundException引起的异常

线程"main“java.lang.NoClassDefFoundError中由ClassNotFoundException引起的异常
EN

Stack Overflow用户
提问于 2022-02-01 18:34:48
回答 1查看 736关注 0票数 2

我需要与外部API合作,以解码绿色通行证,特别是我遵循https://gae-piaz.medium.com/decode-the-eu-green-pass-qrcode-using-java-b5654e55b0fc的指导,并使用Maven依赖项将它们添加到pom.xml文件中。当我在IntellijIDE中运行我的java应用程序时,我得到了以下错误:

代码语言:javascript
复制
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/iot/cbor/CborMap
at kapta.classes/kapta.Utils.GreenPassValidator.DecodeQRGreenPass.decode(DecodeQRGreenPass.java:43)
at kapta.classes/kapta.Utils.GreenPassValidator.MainDecodeGreenPass.main(MainDecodeGreenPass.java:10)                                                                           
Caused by: java.lang.ClassNotFoundException: com.google.iot.cbor.CborMap
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 2 more

在这里,有依赖项的链接:

依赖关系

在这里,具有运行配置的链接:

运行配置

这是我的Pom文件:

代码语言:javascript
复制
<?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>kapta</groupId>
<artifactId>classes</artifactId>
<version>1.0-SNAPSHOT</version>
<name>KaptaProject</name>

<properties>
 <sonar.organization>al3ssandrocaruso</sonar.organization>
 <sonar.host.url>https://sonarcloud.io</sonar.host.url>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <junit.version>5.7.1</junit.version>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
</properties>

<dependencies>
    <dependency>
        <groupId>com.google.zxing</groupId>
        <artifactId>core</artifactId>
        <version>3.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.google.zxing</groupId>
        <artifactId>javase</artifactId>
        <version>3.4.1</version>
    </dependency>
    <dependency>
        <groupId>io.github.ehn-digital-green-development</groupId>
        <artifactId>base45</artifactId>
        <version>0.0.3</version>
    </dependency>
    <dependency>
        <groupId>com.augustcellars.cose</groupId>
        <artifactId>cose-java</artifactId>
        <version>0.9.7</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>com.google.iot.cbor</groupId>
        <artifactId>cbor</artifactId>
        <version>0.01.02</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>com.augustcellars.cose</groupId>
        <artifactId>cose-java</artifactId>
        <version>0.9.4</version>
    </dependency>
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-controls</artifactId>
        <version>17.0.0.1</version>
    </dependency>
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-fxml</artifactId>
        <version>17.0.0.1</version>
    </dependency>
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-web</artifactId>
        <version>17.0.0.1</version>
    </dependency>
    <dependency>
        <groupId>org.controlsfx</groupId>
        <artifactId>controlsfx</artifactId>
        <version>11.1.0</version>
    </dependency>
    <dependency>
        <groupId>com.dlsc.formsfx</groupId>
        <artifactId>formsfx-core</artifactId>
        <version>11.3.2</version>
        <exclusions>
            <exclusion>
                <groupId>org.openjfx</groupId>
                <artifactId>*</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>net.synedra</groupId>
        <artifactId>validatorfx</artifactId>
        <version>0.1.13</version>
        <exclusions>
            <exclusion>
                <groupId>org.openjfx</groupId>
                <artifactId>*</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.kordamp.ikonli</groupId>
        <artifactId>ikonli-javafx</artifactId>
        <version>12.2.0</version>
    </dependency>
    <dependency>
        <groupId>org.kordamp.bootstrapfx</groupId>
        <artifactId>bootstrapfx-core</artifactId>
        <version>0.4.0</version>
    </dependency>
    <dependency>
        <groupId>eu.hansolo</groupId>
        <artifactId>tilesfx</artifactId>
        <version>11.48</version>
        <exclusions>
            <exclusion>
                <groupId>org.openjfx</groupId>
                <artifactId>*</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-api</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>${junit.version}</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-graphics</artifactId>
        <version>17.0.0.1</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.22</version>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>17</source>
                <target>17</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-maven-plugin</artifactId>
            <version>0.0.7</version>
            <executions>
                <execution>
                    <!-- Default configuration for running with: mvn clean javafx:run -->
                    <id>default-cli</id>
                    <configuration>
                        <mainClass>kapta.classes/kapta.MainApp</mainClass>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
    <resources>
        <resource>
            <directory>src/main/java/kapta/View</directory>
            <!-- Alessandro Caruso was here :) -->
        </resource>
    </resources>
</build>

我不知道该怎么做。

EN

回答 1

Stack Overflow用户

发布于 2022-02-01 19:07:23

对于pom.xml中的pom.xml依赖项,将作用域从runtime更改为compile (这是默认的,因此您只需删除scope标记)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70945761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档