3

尝试运行命令时,我收到错误消息noexported names in packagegomobile bind -target=android github.com/nknorg/nkn-sdk-go github.com/nknorg/ncp-go

目标是从 Go 库nkn-sdk-goncp-go生成.aar文件,以便可以将 .aar 文件导入到 Android 项目中。通过下载存储库、移动到它们的根目录并运行命令,我能够为每个库单独生成 .aar 文件。但是,当尝试为多个包(本地或外部)或从下载的库目录之外(例如)运行命令时,我收到上述错误消息。gomobile bind -target=android .gomobile bind -target=android nkn-sdk-go

我在 Windows 10 上运行 Go 版本 1.15.5 和 NDK 版本 21.3.6528147。关于问题可能是什么的任何想法?

4

1 回答 1

2

该问题是由于未在已初始化为 go 模块的目录中运行命令引起的。我通过执行以下步骤解决了这个问题:

  1. 在 $GOPATH/src 目录之外的任何地方创建一个目录。

mkdir <my-module>

  1. 移动到新创建的目录。

cd <my-module>

  1. 将目录初始化为 go 模块。

go mod init <my.module.identifier>

  1. 绑定包以生成 .aar 文件。

gomobile bind -target=android <github.com/package1> <github.com/package2> ...

于 2020-11-25T17:39:38.640 回答