簡體   English   中英

dart2js不會拋出此類文件或目錄錯誤

[英]dart2js throwing no such file or directory error

很簡單,我在/ usr / local / bin /中有一個指向dart2js的鏈接,該鏈接在運行時會引發重復的錯誤。

我跑了

sudo ln -s /Users/macbook/Development/dart/dart-sdk/bin/dart2js /usr/local/bin/dart2js

從終端運行dart2js時,系統會提示我

...
/usr/local/bin/dart2js: line 9: 1=/Users/macbook/Development/dart/dart-sdk/bin/dart2js: No such file or directory
/usr/local/bin/dart2js: line 9: 1=/Users/macbook/Development/dart/dart-sdk/bin/dart2js: No such file or directory
/usr/local/bin/dart2js: line 9: 1=/Users/macbook/Development/dart/dart-sdk/bin/dart2js: No such file or directory
/usr/local/bin/dart2js: line 9: 1=/Users/macbook/Development/dart/dart-sdk/bin/dart2js: No such file or directory
/usr/local/bin/dart2js: line 9: 1=/Users/macbook/Development/dart/dart-sdk/bin/dart2js: No such file or directory
... etc

我想我只是錯誤地使用了鏈接,但是我不了解為什么。

我前一段時間遇到這個問題並發布了此問題無法使用符號鏈接運行dart命令行腳本

我還添加了一種變通辦法,它也可能對您的情況有所幫助-您可能需要對其稍加調整,但它應該可以幫助您入門。

我現在使用的一種解決方法是在與testscript.dart相同的目錄中創建一個名為'testscript'的bash腳本,並鏈接到該腳本

我查找bash腳本的當前目錄並啟動dart腳本( 從中獲取Bash腳本的源目錄 )。

#!/bin/bash
ME="$(basename "$(test -L "$0" && readlink "$0" || echo "$0")")"

SOURCE="${BASH_SOURCE[0]}"
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
  DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
  SOURCE="$(readlink "$SOURCE")"
  [[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
done
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"

${DIR}/${ME}.dart ${BASH_SOURCE[0]}

而不是使用io.Platform.script獲取命令的名稱(符號鏈接),我必須將其作為參數傳遞給它,以便在dart腳本中使用它(我使用了用於啟動腳本的符號鏈接的名稱,就像dart中的參數一樣。腳本)這種方式我必須區分腳本是否直接啟動,並使用io.Platform.script和args [0]。

我認為這應該更容易。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM