gpt4 book ai didi

build - Dart2JS Pub构建无法正确遍历项目文件夹

转载 作者:行者123 更新时间:2023-12-03 04:04:52 25 4
gpt4 key购买 nike

我现在正在做一个长期项目。在移动了一些文件夹,正确地重构了代码的不同部分之后,Webstorm的Dart分析器未显示任何错误,但运行pub servepub build均失败。

Pub或Dart2JS似乎无法正确遍历文件夹。

这是我得到的第一个错误:

[Error from Dart2JS on CS_Game_Engine|web/main.dart]:
web/UIElements/NodeSettingsItems/TextVariableEditor.dart:4:1:
Can't read 'file:///Data/ownCloud/cybersecgame/CS%20Game%20Engine/web/UIElements/Data/Variables/Variable.dart' (Could not find asset CS_Game_Engine|web/UIElements/Data/Variables/Variable.dart.).
import '../../Data/Variables/Variable.dart';
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

这很有趣,因为您在错误中看到的文件 TextVariableEditor.dart位于 web/UIElements/NodeSettingsItems/目录中。

我要访问的文件( Variables.dart)位于 web/Data/Variables/Variable.dart中。

import语句使用 ../../向上移动2个文件夹,但是Pub或Dart2JS不会向上移动2个文件夹,它只会向上移动1个文件夹。再次看到错误:
Can't read 'file:///Data/ownCloud/cybersecgame/CS%20Game%20Engine/web/UIElements/Data/Variables/Variable.dart'

它在错误的位置寻找文件。我不确定该怎么做才能解决此问题,而且我环顾四周,却找不到任何东西。再次,Webstorm的Dart分析器没有显示任何问题,但是pub build或pub serve均失败,无法找到文件。

我以前在代码中使用过 ../../很多次,但这是第一次导致问题。还有其他与此类似的错误,但存在无法正确读取 ../../的相同问题。

更新1:

我已经进行了更多的测试,并且在路径的开头添加了额外的 ../可以修复 pub build期间的错误。但是,现在Webstorm及其Dart Analyzer显示了很多错误,因为路径显然是错误的(太多 ../)。这是一种解决方法,但不是解决方法。有人知道为什么pub或Dart2JS错误地读取路径吗?以某种方式跳过 ../之一?

最佳答案

Web目录中的代码只能访问两个位置的文件:

  • 通过相对路径
  • 在Web目录中的内容
  • 通过package:打包的东西导入

  • #2很有趣。这可以包括您自己项目中的文件,您只需要将这些文件放在 lib目录中并通过 package:my_proj URI进行访问。

    https://github.com/dart-lang/sample-pop_pop_win/为例

    另请参阅 https://www.dartlang.org/tools/pub/package-layout

    关于build - Dart2JS Pub构建无法正确遍历项目文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44751541/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com