我正在尝试使用命令在 Windows 7 64 位中生成一个 .aar 文件gomobile bind --target=android,它给了我标题错误。我一直在寻找,但找不到答案。我正在尝试使用该程序在 Android Studio 中制作一个应用程序,它的第一部分如下:
package main (I changed it to "random" for the bind command to work - that's the thing to do, right?)
import (
"github.com/elazarl/goproxy"
"text/template"
"net/http"
"regexp"
"bytes"
"log"
"net"
)
错误如下:
gomobile: go build -buildmode=c-shared -o=C:\Users\\[User name]\AppData\Local\Temp\gomobile-work-101707703\android\src\main\jniLibs\armeabi-v7a\libgojni.so gobind failed: exit status 1
..\\[User name]\AppData\Local\Temp\gomobile-work-101707703\src\gobind\go_randommain.go:17:2: local import "." in non-local package
我正在关注的指南之一是https://dzone.com/articles/gomobile-library-development-for-iosandroid并且我从那里开始做大部分事情。我从未听说过这种语言,所以我是初学者(如果这是一个愚蠢的问题,我很抱歉)。
根据我的阅读,这可能是因为程序中有例如“.\greetings”(带有“.\”的东西与相对路径有关),所以我不知道为什么会这样. 有人可以帮忙吗?如果我需要提供更多数据,请告诉我,我会提供。
提前致谢!
编辑:我试图将“package random”更改为“package thing”,错误的最后部分将“random”更改为“thing”:
..\\[User name]\AppData\Local\Temp\gomobile-work-101707703\src\gobind\go_thingmain.go:17:2: local import "." in non-local package
我不应该尝试转换这个程序,因为它是以无法转换的方式编写的吗?或者是其他东西?
如果它有任何帮助,我在 Windows 中的用户名有一个空格,但在 CMD 中它显示为未完成的名称和最后的 ~1,所以它至少在命令返回时没有空格。我不明白那些 17:2 的东西指向哪里。我知道这是一行和一列,但我不知道去哪里查找错误,因为我什至试图转到生成的文件,但我找不到它。当我复制创建的文件夹时,只有 4 或 5 个文件随附,没有文件夹,所以我看不到该文件中的错误来理解这一点......希望有人知道答案或可能的答案。
编辑 2:现在我决定尝试在导入后删除所有代码,并且只在 .go 文件中包含代码中显示的内容,它给出了以下错误:
gomobile: C:\Users\[User name]\go\bin\gobind.exe -lang=go,java -outdir=C:\Users\[User name\AppData\Local\Temp\gomobile-work-847973191 . failed: exit status 1
no exported names in the package "."
no exported names in the package "."
no exported names in the package "."
no exported names in the package "."
而且我没有任何“。” 在文件中,所以我可能会想到“。” 指的是一些包,但我不知道,因为只有 4 个而不是 7 个是导入的。刚才我删除了文件中的所有内容,除了第一行,package random它给出了与上面相同的错误。有什么帮助吗?(如果我需要提供更多信息,请告诉我)我不明白是什么原因造成的,因为我在 Internet 上看到的唯一示例与文件中的相对导入有关。我的 GOPATH 错了吗?我有它的默认值%USERNAME%/go。这是一个可执行文件。我试图通过将包更改为随机来将其转换为库。我不知道它是否与此有关,甚至我是否需要更改其他任何内容才能将其用作图书馆。
海绵宝宝撒
相关分类