nodejs 実行可能ファイルを pkg でパッケージ化するにはどうすればよいですか?次の記事では、pkg を使用して Node プロジェクトを実行可能ファイルにパッケージ化する方法を紹介します。

#Node.js
##Node.js
##Node.js
##Node.js
Node.js
プロジェクトを実行可能ファイルとしてパッケージ化でき、Node.js がインストールされていないデバイスでも実行できます。
#実験環境
オペレーティング システム: Windows
ノード バージョン: 16.14.2
操作手順
PKGダウンロード
これをグローバルにインストールし、任意のディレクトリで実行することを選択できます。

パッケージング プログラム
簡単なプログラムを作成します。最初にプログラム (server.js コンテンツなど)
1 2 3 4 5 6 7 8 9 10 | const express = require ( 'express' );
const app = express();
app.get( '/' , (req, res) => {
res.send( 'Hello World!' );
});
app.listen(3000, () => {
console.log( 'Express web app on localhost:3000' );
});
|
ログイン後にコピー
nodejs プロジェクトのルート ディレクトリに移動し、次のコマンドを実行します
最初のエラーが報告されます
# #この時点でエラーが報告されます
1 2 3 4 5 6 7 8 9 10 | <a href= "https://www.php.cn/course/list/24.html" target= "_blank" textvalue= "nodejs 教程" >$ pkg server.js
> pkg@5.6.0
> Targets not specified. Assuming:
node16-linux-x64, node16-macos-x64, node16-win-x64
> Fetching base Node.js binaries to PKG_CACHE_PATH
fetched-v16.14.2-linux-x64 [ ] 0%> Not found in remote cache:
{ "tag" : "v3.3" , "name" : "node-v16.14.2-linux-x64" }
> Building base binary from source:
built-v16.14.2-linux-x64
> Error! Not able to build for 'linux' here, only for 'win' </a>
|
一般的な考え方は、現在の環境は Windows システムにコンパイルされた実行可能ファイルのみをサポートするということです。つまり、win
### 調整手順は次のとおりです。 ## #
### ここで、-t win は、--target win と同等です。これは、Windows 用のファイルのみをコンパイルすることを意味します。 #########2 番目のエラー レポート #######コンパイル中にエラー メッセージが再度報告されました: ###
1 2 3 4 5 6 7 8 9 | $ pkg -t win server.js
> pkg@5.6.0
> Fetching base Node.js binaries to PKG_CACHE_PATH
fetched-v16.14.2-win-x64 [ ] 0%> Not found in remote cache:
{ "tag" : "v3.3" , "name" : "node-v16.14.2-win-x64" }
> Building base binary from source:
built-v16.14.2-win-x64
> Fetching Node.js source archive from nodejs.org...
> Error! AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value:
|
ログイン後にコピー
###主な考え方は、対応するバイナリ ファイルが v16 をフェッチしたということです。 14.2-win がキャッシュ -x64 にありません。対応するファイルをダウンロードして、対応するキャッシュ ディレクトリに置くだけです。 ######1. ### 公式 Web サイト ### にアクセスして、対応するバージョン ファイルをダウンロードします。たとえば、私の場合は、node-v16.14.2-win-x64######公式 Web サイトのアドレス: https://github.com /vercel/pkg-fetch/releases###############2. 前の手順でダウンロードしたファイル node-v16.14.2-win-x64 の名前を次のように変更します。 fetched-v16.14.2-win -x64 を現在のユーザーのキャッシュ ディレクトリに置きます。 ######例: 私のキャッシュ ディレクトリは ###C:\Users\MangoDowner.pkg-cache### です。フェッチ タグを結合すると、それが最終ディレクトリになります。エラー レポートの情報を参照してください。取得するタグは v3.3です。###
1 | { "tag" : "v3.3" , "name" : "node-v16.14.2-win-x64" }
|
ログイン後にコピー
###最終的な親ディレクトリは C:\Users\MangoDowner.pkg-cache\v3.3 として取得できます。###つまり、最終的なファイル アドレスは C:\ です。 Users\MangoDowner .pkg-cache\v3.3\fetched-v16.14.2-win-x64######再度コンパイルすると、成功しました。 ###
1 2 | $ pkg -t win server.js
> pkg@5.6.0
|
ログイン後にコピー
###ノード関連の知識については、###nodejs チュートリアル ### を参照してください。 ###
以上がpkg を使用して Node.js プロジェクトを実行可能ファイルにパッケージ化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。