halo icon indicating copy to clipboard operation
halo copied to clipboard

迁移插件界面报错

Open youngledo opened this issue 1 year ago • 11 comments

是什么版本出现了此问题?

2.0.0

使用的什么数据库?

H2

使用的哪种方式部署?

Docker

在线站点地址

No response

发生了什么?

image

相关日志输出

上传插件:
{"type":"about:blank","title":"Bad Request","status":400,"detail":"Cannot construct instance of `run.halo.app.core.extension.Plugin$PluginAuthor` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('halo-dev')\n at [Source: UNKNOWN; byte offset: #UNKNOWN] (through reference chain: run.halo.app.core.extension.Plugin[\"spec\"]->run.halo.app.core.extension.Plugin$PluginSpec[\"author\"])","instance":"/apis/api.console.halo.run/v1alpha1/plugins/install"}

附加信息

No response

youngledo avatar Dec 01 '22 04:12 youngledo

请尝试使用这个版本:https://github.com/halo-sigs/plugin-migrate/releases/tag/v1.0.1

ruibaby avatar Dec 01 '22 04:12 ruibaby

这个插件可以,但我点上传还没上传就提示这个: image

youngledo avatar Dec 01 '22 04:12 youngledo

image

ruibaby avatar Dec 01 '22 04:12 ruibaby

我用的是edge浏览器,理论上可以吧。我试了Chrome,也是一样的。

youngledo avatar Dec 01 '22 04:12 youngledo

我用的是edge浏览器,理论上可以吧。我试了Chrome,也是一样的。

那这就很奇怪了,浏览器访问文件的 API 在 Chrome 内核 86 开始就支持了:https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API#browser_compatibility

可能是系统没有给浏览器访问文件的权限?

ruibaby avatar Dec 01 '22 04:12 ruibaby

我看了浏览器控制台没有报错信息,我用的是MAC最新系统。浏览器也有文件的权限。

youngledo avatar Dec 01 '22 04:12 youngledo

要知道安装插件的界面也是要弹出文件对话框的,这是正常的。应该还是迁移界面(插件)的前端校验有误。

youngledo avatar Dec 01 '22 04:12 youngledo

要知道安装插件的界面也是要弹出文件对话框的,这是正常的。应该还是迁移界面(插件)的前端校验有误。

这个选择文件并不是上传文件,而是在前端直接调用浏览器 API 读取文件,和上传文件的 file input 有本质区别。我这边测试 macOS 和 Ubuntu 的 Chrome 都是正常的。或许你可以测试一下 https://vscode.dev 是否能正常读取文件。

后续为了防止这类兼容性问题,我们将改为上传到后端读取的方式。

ruibaby avatar Dec 01 '22 04:12 ruibaby

上面vscode打开文件、文件夹都正常弹出对话框。

youngledo avatar Dec 01 '22 04:12 youngledo

上面vscode打开文件、文件夹都正常弹出对话框。

我疏忽了一点,这个 API 还需要站点是 https 协议。

ruibaby avatar Dec 01 '22 04:12 ruibaby

/kind bug

JohnNiang avatar Dec 01 '22 06:12 JohnNiang

上面vscode打开文件、文件夹都正常弹出对话框。

我疏忽了一点,这个 API 还需要站点是 https 协议。

请问最新版本支持HTTP的吗?

youngledo avatar Jan 11 '23 02:01 youngledo

Hi @youngledo ,最新版的迁移插件已经支持 http 了。可参考 https://github.com/halo-sigs/plugin-migrate/pull/8

JohnNiang avatar Jan 11 '23 02:01 JohnNiang

Hi @youngledo ,最新版的迁移插件已经支持 http 了。可参考 halo-sigs/plugin-migrate#8

目前还没有发布版本,当然可以考虑自编译一个。

ruibaby avatar Jan 11 '23 02:01 ruibaby

Hi @youngledo ,最新版的迁移插件已经支持 http 了。可参考 halo-sigs/plugin-migrate#8

这个页面的【可测试插件】还是无法上传。

youngledo avatar Jan 11 '23 03:01 youngledo

Hi @youngledo ,最新版的迁移插件已经支持 http 了。可参考 halo-sigs/plugin-migrate#8

目前还没有发布版本,当然可以考虑自编译一个。

我下载源码后无法编译,Spring相关依赖缺失? image

youngledo avatar Jan 11 '23 03:01 youngledo

并没有发现如你描述的情况,你可以检查一下依赖是否有下载完成,或者刷新一下 gradle 让其重新下载

image

guqing avatar Jan 11 '23 03:01 guqing

并没有发现如你描述的情况,你可以检查一下依赖是否有下载完成,或者刷新一下 gradle 让其重新下载

image

main分支,没有做任何修改: image

youngledo avatar Jan 11 '23 03:01 youngledo

你是否有配置了什么镜像源导致依赖无法下载呢,我也是 main 分支最新代码, https://github.com/halo-sigs/plugin-migrate/actions/runs/3843638187 可以看到代码提交的 CI 都是可以通过,应该和你本地环境有关系

guqing avatar Jan 11 '23 03:01 guqing

https://github.com/halo-sigs/plugin-migrate/suites/10191730545/artifacts/506277368 你使用此地址下载后解压得到 jar,就可以使用了,这是 CI 临时构建的。

guqing avatar Jan 11 '23 03:01 guqing

https://github.com/halo-sigs/plugin-migrate/suites/10191730545/artifacts/506277368 你使用此地址下载后解压得到 jar,就可以使用了,这是 CI 临时构建的。

嗯,安装了。但是还是提示无法“所选文件不符合要求”。感觉跟插件无关 @JohnNiang 。

youngledo avatar Jan 11 '23 03:01 youngledo

https://github.com/halo-sigs/plugin-migrate/suites/10191730545/artifacts/506277368 你使用此地址下载后解压得到 jar,就可以使用了,这是 CI 临时构建的。

嗯,安装了。但是还是提示无法“所选文件不符合要求”。感觉跟插件无关 @JohnNiang 。

你选择的文件是什么格式呢,只支持 json

guqing avatar Jan 11 '23 03:01 guqing

https://github.com/halo-sigs/plugin-migrate/suites/10191730545/artifacts/506277368 你使用此地址下载后解压得到 jar,就可以使用了,这是 CI 临时构建的。

嗯,安装了。但是还是提示无法“所选文件不符合要求”。感觉跟插件无关 @JohnNiang 。

你选择的文件是什么格式呢,只支持 json

我还没开始选就提示的。点按钮就提示。

@ruibaby 上次说HTTP不支持。

youngledo avatar Jan 11 '23 03:01 youngledo

目前已经支持,如下: Kapture 2023-01-11 at 11 57 14

你可以尝试清理浏览器缓存,或者用浏览器无痕模式试一下

guqing avatar Jan 11 '23 03:01 guqing

ths

youngledo avatar Jan 12 '23 00:01 youngledo