gpt4 book ai didi

java - 合约编译因 InvoicationTargetException 错误而失败

转载 作者:行者123 更新时间:2023-11-30 01:48:08 25 4
gpt4 key购买 nike

我尝试使用 Maven 与 Aion 创建 Java 合约,但每次尝试运行 mvn clean install 时,都会收到以下错误:

[ERROR] Failed to execute goal org.aion4j:aion4j-maven-plugin:0.6.7:postpack (default) on project LearningAion: Contract Jar post compilation failed: InvocationTargetException: NullPointerException -> [Help 1]

我使用 Maven 构建命令重新创建了一个项目:mvn archetype:generate -DarchetypeGroupId=org.aion4j -DarchetypeArtifactId=avm-archetype -DarchetypeVersion=0.20 并且该项目运行良好。

这是我的契约(Contract)代码:

package AnimalHouse;

import avm.Blockchain;
import org.aion.avm.tooling.abi.Callable;

public class MyPets
{
private static String myDogsName = "Alan.";

@Callable
public static String getString() {
return myString;
}

@Callable
public static void setString(String newStr) {
myString = newStr;
}
}

根据Aion Docs一切都应该编译。我不确定为什么这个契约(Contract)不起作用,但当我创建一个全新的契约(Contract)时它就起作用了。

最佳答案

查看您项目的 pom.xml文件 <contract.main.class> 。仔细检查这两个标记之间是否是主 Java 类的名称和包名称。如果你的情况应该是 AnimalHouse.MyPets .

<properties>
...
<contract.main.class>AnimalHouse.MyPets</contract.main.class>
...
</properties>

关于java - 合约编译因 InvoicationTargetException 错误而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57171142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com