当前位置: 首页 > 知识库问答 >
问题:

Web3j Android java solidity包装错误

皮献
2023-03-14

尝试使用web3j调用一个契约中的一些函数。我按照坚实的指南,并得到了。阿比和。本合同bin-https://ethers can . io/address/0x 9 DDA 40 dab 849 BBB 087 dcbcf 0 c 5223 EC 5 FFA 0 ad 7 #代码。然后使用web3j命令行来制作。java文件包装器,输出到正确的目录。

除了这几行,一切都正常:

public static final Event FUNDSWITHDRAWN_EVENT = new Event("FundsWithdrawn",
        Arrays.<TypeReference<?>>asList(new TypeReference<Address>() {}, new TypeReference<Uint256>() {}));
;

public static final Event FUNDSDEPOSITED_EVENT = new Event("FundsDeposited",
        Arrays.<TypeReference<?>>asList(new TypeReference<Address>() {}, new TypeReference<Uint256>() {}));
;

public static final Event SERVERADDED_EVENT = new Event("ServerAdded",
        Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}));
;

public static final Event SERVERREMOVED_EVENT = new Event("ServerRemoved",
        Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}));
;

public static final Event GAMESTARTED_EVENT = new Event("GameStarted",
        Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}, new TypeReference<DynamicArray<Address>>() {}));
;

public static final Event GAMEENDED_EVENT = new Event("GameEnded",
        Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}, new TypeReference<Address>() {}, new TypeReference<Address>() {}, new TypeReference<Address>() {}));
;

投掷误差:

Event() in Event cannot be applied to:
Expected Parameters:
Actual Arguments:

name:
String
"ServerAdded"  
indexedParameters:
List<TypeReference<?>>
Arrays...new TypeReference<Uint256>() {})  
nonIndexedParameters:
List<TypeReference<?>>

还有这两行:

    public static final Event OWNERSHIPRENOUNCED_EVENT = new Event("OwnershipRenounced",
        Arrays.<TypeReference<?>>asList(new TypeReference<Address>(true) {}));
;

public static final Event OWNERSHIPTRANSFERRED_EVENT = new Event("OwnershipTransferred",
        Arrays.<TypeReference<?>>asList(new TypeReference<Address>(true) {}, new TypeReference<Address>(true) {}));
;

给出错误:TypeReference中的TypeReference()不能应用于(布尔值)

我不是契约的创建者,但它确实在其web3js和metamask实现中正常工作。我在想的一件事是,这些事件是针对服务器端的,我需要包括它们吗?(尽管您可以看到它们是在后面引用的)但是我只是想知道。bin文件逼你不要改东西?无论如何,这是新的,所以任何帮助或指示表示感谢。

共有1个答案

林弘文
2023-03-14

它发生在我身上,似乎是版本的问题,因为Java类的生成有语法错误。

你所能做的就是尝试手动解决问题:删除true,然后稍微改变一下代码

public static final Event OWNERSHIPRENOUNCED_EVENT = new Event("OwnershipRenounced",
        Arrays.<TypeReference<?>>asList(new TypeReference<Address>() {}),
        Arrays.<TypeReference<?>>asList(new TypeReference<Address>() {}));
;
 类似资料:
  • 我正在使用python2.7并试图使用pip安装scrapy,但得到以下结果:异常:回溯(最近一次调用):文件“/usr/local/lib/python2.7/dist-packages/pip/basecommand.py”,第215行,主状态=self.run(选项,args)文件“/usr/local/lib/python2.7/dist-packages/pip/commands/ins

  • 问题内容: 尽管这里有一个相同的问题,但是我找不到我的问题的答案,所以这里是我的问题: 我正在使用mocha和chai测试我的node js应用程序。我正在用sinion封装功能。 当我尝试运行此测试时,它给了我错误 我也尝试过 在每个描述中,但仍然给我相同的错误。 问题答案: 您应该恢复in 功能,请按以下方法尝试。

  • 我正在开发一个应用程序,如果我从android studio运行到我的设备上,它绝对运行良好。如果我将我的apk放入google drive并与其他人共享,它会显示错误< code >(“Android apk安装失败。安装包错误,无法安装。)当他们尝试安装应用程序时。不是署名的apk。它仍处于原型阶段(调试模式)。 请让我知道我哪里做错了。

  • 我在尝试安装python包时遇到此错误: 错误:由于环境错误无法安装包:HTTPSConnectionpool(host='files.pythonhosted.org',port=443):最大重试超过了url: /packages/f2/12/37c09c37d7ac2bdb6169d5b9409a8e64770a997412edcccc689115d63b97/catboost-0.16-c

  • 我使用npm很长一段时间了(使用Win10)-在防火墙/权限等方面没有改变任何东西,突然间我在尝试安装任何软件包时出现以下错误: C:\udemy-button>npm安装引导程序--保存npm错误!路径C:\udemy-button\node_modules\fsevents\node_modules\aws4\package.json npm err!代码EPERM npm错误!错误-4048