問題タブ [vscode-tasks]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio-code - ユーザーごとに Visual Studio Code でタスクを作成する
Visual Studio Codeの Node タスクを作成すると、開いているフォルダー (この場合は下の画像に示すように node-app)の.settingsフォルダー内にtasks.jsonファイルが作成されます。つまり、フォルダーごとにタスクを作成します。
私の質問は、Visual Studio Code で開くフォルダーごとに同じタスクを作成するのではなく、任意のフォルダーからノード コードを実行できるように、プロジェクト ベースのタスクではなくユーザーごとにタスクを作成する方法です。
また、フォルダーを開かずに個々のファイルを実行するにはどうすればよいですか。
ant - どこにでもあるantビルドファイルを実行するVSCodeタスク
ソース ディレクトリ内の任意の場所にある build.xml ファイルから ant タスクを起動するカスタム外部ツール構成を備えた Eclipse を使用して過去 15 年間に開発された、複数のソース ディレクトリにまたがる巨大なプロジェクトがあります (大混乱です!)。
日常の作業はほとんどが xml と JavaScript ベースであるため、軽量の代替手段として VSCode を考えました (たとえば、Eclipse は HeepSpace を超えずに大きな xml ファイルを処理できないため)。タスク ランナーは、ant ビルドをエディターに統合する優れた方法のように見えます。また、ant ビルドを実行できると宣伝されています。
ほんの数例を挙げると、Make、Ant、Gulp、Jake、Rake、MSBuild などがあります。
ルート フォルダーにある build.xml を使用して ant ビルドを実行できます。ただし、これはプロジェクトの構造ではありません。
ワークスペースのルートとは異なるディレクトリからタスク コマンド(私の場合は ant)を実行する方法はありますか?
git の環境変数のようなものGIT_WORK_TREE
か、2 つのコマンド (のようなcd {{build.xml folder}} && ant
) を実行する方法を考えています。私の現在のtasks.jsonは
(私はWindowsを使用していますが、Linux / OSXから来て、ここでの考え方にはちょっと慣れていません。)
json - VS Code の tasks.json -- タスクは個別に機能しますが、組み合わせることはできません
これは私を夢中にさせています(気が狂います!)。ビルド/実行ファイルは適切で、fmt コマンドは適切です。しかし、1 つのタスク ファイルに結合しようとすると、機能しなくなります。
これら2つは単独で正常に動作し、私が望むように動作します:
タスク.json
タスク.json
ただし、1 つのファイルに結合すると、機能しません。
タスク.json
ビルド時に発生するエラー:
なぜそれが一方の方法で機能するのか、もう一方の方法では機能しないのか理解できないようです。2 番目の方法 (結合されたタスクの場合) の概要は次のとおりです: VSCode で複数のタスクを定義する
回答: 問題は、既にタスク名としてリストされている場合に、「build」または「fmt」を引数として追加することにあります。それが taskname の仕組みだとは知りませんでした。ユーザーが愚かな Windows ファイアウォールを気にせずに開発できるようにする最終的な作業製品:
tasks.json (@not-a-golfer のおかげで最終的な作業)
node.js - Visual Studio Code ビルド タスクの結合
Visual Studio Code のドキュメントには、typescript コンパイルまたはマークダウン コンパイルのいずれかを許可するtasks.json 構成の例が記載されています。両方を同時に達成する方法は明確ではありません。
どうすればそれができますか?
2つの例の要約は次のとおりです...
タイプスクリプトの例
VSCode で typescript ビルド ステップを実行する場合、指示には typescript ( npm install -g typescript
) をインストールしてから次のタスクを定義する必要があると書かれています。
マークダウンの例
VSCode に Markdown ビルド ステップを実行させたい場合、ドキュメントには、選択したマークダウン プラグイン (例: npm install -g marked
) をインストールしてから、タスクを定義できると記載されています。
それで?
明らかに、tasks.json には 1 つの JSON オブジェクトが含まれる場合があります。したがって、上記の両方の定義をコンマで単純に結合することはできません。一方、全体的なタスク定義内で複数のタスクを定義することができます。
上記は合法的な構文のスケルトンですが、ストーリーを完成させる方法は不明です。この種の問題を解決する方法についてあちこちで議論されていることは承知していますが、根本的な断絶があるようです。たとえば、VSCode は、 を押したときに両方のタスクを実行することになっていることをどのように認識しますか?ctrl+shift+b
確かに、VSCode の開発者には、複数のビルド タスクに対応するためのより直接的で簡単な方法があります。誰かそれが何であるか知っていますか?