工程中引入的ZooKeeper相关JAR包的版本与ZooKeeper服务的版本不一致。

什么?没有解决你的问题?那你看看ZooKeeper的JAR包版本与Curator的JAR包版本是不是不兼容(详细信息)。

什么?还是没有解决你的问题?那你查查ZooKeeper服务所在的服务器是不是防火墙忘了关了,或者网络连接是否真的存在一些问题。

什么?依然没有解决你的问题?那我也不知道了,我碰到的可能的问题点就这几个……挨个试过来总会成功……

Go输出exe程序时,可以使用manifest文件调整程序的配置,使其运行时以管理员身份运行,对于需要写入系统目录等高权限操作时十分必要。

首先在工程目录新建manifest文件,写入如下内容:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="1.0.0.0"
    processorArchitecture="x86"
    name="setup.exe"
    type="win32"
/>
<description>My App</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
        <requestedPrivileges>
            <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
        </requestedPrivileges>
    </security>
</trustInfo>
</assembly>

其中“level="requireAdministrator"”代表程序运行时将申请管理员权限,在UAC激活的情况下将弹出“用户账户控制”对话框,用户允许后,程序将以管理员身份运行。

之后,安装rsrc。

go get github.com/akavel/rsrc

在工程目录运行如下代码:

rsrc -manifest setup.exe.manifest -o app.syso

基于manifest文件生成一个.syso文件。该文件会被go build自动识别,因此下面进行正常的打包步骤即可。

manifest文件除了可以调整exe的权限,还可设置文件版本、描述信息等,具体可自行搜索。

按照正常步骤执行compile.sh之后,会出现播放器的apk文件,aar文件不会出现在output文件夹中。但如果想自己开发基于vlc的android项目,则必须需要aar文件才行。
根据官方文档,在compile.sh执行成功之后,还需要执行另外一条命令:

sh compile.sh -l -a <ABI> -r

其中<ABI>代表平台,可取值有armeabi-v7a、arm64-v8a、armeabi、armeabi-nofpu、armeabi-v5、x86、mips等。
该命令执行完毕之后,output文件夹中将会出现aar文件,可提取出来直接使用。

目前接入支付宝一般使用开放平台的openapi接口,应该没有新系统接入mapi这种旧版本API了,但前段时间碰到一个旧系统改造的需求,必须接入mapi。在最后签名与验签的时候碰到ILLEGAL_SIGN的错误信息。经过排查,可能会存在如下原因:

1、构建表单并输出到页面时忘记加上meta标签指定编码,可能造成表单中中文值的乱码。

在拼接表单时,需要加入如下代码来指定页面编码。

<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />

2、Java输出表单如果使用了response.getWriter().write()方法,必须在输出之前设置response的编码。如下:

response.setCharacterEncoding("utf-8");
response.setContentType("text/html; charset=UTF-8");

经过测试,在拼接表单阶段是不需要对表单的中文值进行URLEncode的,提示ILLEGAL_SIGN的原因并不在中文强制编码上,而是在各个环节可能造成的中文乱码。解决问题的根源就在于从头到尾需要统一编码。

如果怀疑表单乱码,可以不在表单内容上拼接自动提交表单的JS代码,从而有时间查看表单在页面上的真实渲染结果,从而确认表单是否有乱码。

如果您进入了这个帖子,我想应该是通过搜索引擎进来的。

您应该已经尝试了N多次重装VSCode和Go插件,但只要是同一台机器无论怎么重装都无济于事。

您应该也已经尝试了N多次删除launch.json或.vscode目录后启动您的Go程序,但无论怎么删除都无济于事。

您应该又已经尝试了N多次修改VSCode的goroot和gopath配置,但无论怎么修改都无济于事。

您应该还已经尝试了百度、Bing、Gxxgle,或者无数遍查看了VSCode在github上的issue列表,看着其他人说“Fixed in version XX.XX, thanks.:)”,但自己的VSCode无论怎么更新都无法解决。

这里提供一个可能有效的解决办法。删除如下的目录:

C:\Users\Administrator\.vscode\extensions

这个解决办法对我有效,希望对您也有效。