运行全局激活的dart包的权限被拒绝

kupeojn6  于 12个月前  发布在  其他
关注(0)|答案(2)|浏览(94)

我正在尝试开发一个命令行包,所以我遵循了以下步骤:
第一个月
然后使用以下命令全局激活软件包:
dart pub global activate --source path $(pwd)
请注意,我在文档中没有找到任何关于--source path actual_path的内容,但是每当我只对--source actual_path使用该命令时,我会得到以下内容:
"/Users/user/Desktop/Workspace/package_name" is not an allowed value for option "source".
因此,在成功激活包后,我尝试使用以下命令运行它:
package_name
但我得到了这个
zsh: command not found: package_name
发现这里的文档已经过时了,在搜索本地目录后,我发现实际的目录是global_packages而不是bin,所以我改变了它。
现在,当我尝试package_name时,我得到:zsh: permission denied: package_name
经过调查,我发现package_name是一个目录中的global_packages目录,它只包含pubspec.lock,所以我已经尝试了chmod a+x的文件和目录,但无济于事。
进一步调查global_packages包含另一个包intl_utils内我发现:

.packages       incremental
.dart_tool      bin             pubspec.lock

字符串
但是在终端上运行intl_utils也得到了同样的错误:zsh: permission denied: intl_utils我没有手动安装这个包,但是VS代码扩展Flutter Intl安装了,它似乎工作得很好。
现在我有两个问题:
1.由于Flutter Intl扩展可以完美地工作,因此拒绝了什么权限?
1.我的软件包bin/my_package.dart中有一个文件,但它没有到那里,我做错了什么吗?
Flutter(Channel master,2.13.0-0.0.pre.90,on macOS 12.3 21E230 darwin-x64,locale en-US)
dart --version
Dart SDK版本:2.17.0-202.0.dev(dev)(Thu Mar 10 20:55:41 2022 -0800)on“macos_x64”

编辑#1

尝试dart pub global run package_name和它的工作,但它似乎是建设的包再次,但我仍然需要使用它没有长线的正确方式。

编辑#2

为了创建这个应用程序,我尝试了dart create -t console-full package_name,但结果仍然一样。

nwsw7zdq

nwsw7zdq1#

我只是想补充一下,我遇到了类似的问题,但已经在yaml中声明了package_name。事实证明,我不得不删除.dart_tool/pub/bin文件夹。

sudo rm -r ./.dart_tool/pub/bin

字符串
我的猜测是我正在运行一个以前缓存的构建,这导致了这个问题。

ff29svar

ff29svar2#

因此,在弄乱并更改分支(很多)之后,问题出现在pubspec.yaml中,应该有:

executables:
  package_name: # you can add a custom path here if you want though

字符串
我想文档关于“bin”目录是正确的,但它让我想知道global_packagesintl_utils

相关问题