pkg を使用して Node.js プロジェクトを実行可能ファイルにパッケージ化する方法について説明します。

青灯夜游
リリース: 2022-12-02 21:06:11
転載
4884 人が閲覧しました

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

pkg を使用して Node.js プロジェクトを実行可能ファイルにパッケージ化する方法について説明します。

pkg を使用すると、Node.js プロジェクトを実行可能ファイルにパッケージ化でき、Node.js がインストールされていないデバイスでも実行できます。 [関連チュートリアルの推奨事項: nodejs ビデオ チュートリアル ]

実験環境

  • オペレーティング システム: Windows

  • ##ノードバージョン: 16.14.2

##操作プロセス##PKG のダウンロード

  • グローバルにインストールして任意のディレクトリで実行することを選択できます:

    $ npm install -g pkg
    ログイン後にコピー

パッケージング プログラム

  • まず、server.js content などの簡単なプログラムを作成します

    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 プロジェクトのルート ディレクトリに移動し、次のコマンドを実行します
$ pkg server.js
ログイン後にコピー

初めてのエラー

現時点では、エラーが報告されます

$ 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'
ログイン後にコピー
主な考え方は、現在の環境では、Windows システムにコンパイルされた実行可能ファイルのみがサポートされるということです。 win

調整手順は次のとおりです:

$ pkg -t win server.js
ログイン後にコピー

ここで、-t win は --targets win と同等で、ファイルは Windows 用にのみコンパイルされることを意味します。

2 番目のエラー レポート

#コンパイル中にエラー メッセージが再度報告されました:

$ 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 を現在のユーザーのキャッシュ ディレクトリに置きます。

例: 私のキャッシュ ディレクトリは pkg を使用して Node.js プロジェクトを実行可能ファイルにパッケージ化する方法について説明します。C:\Users\MangoDowner.pkg-cache

です。フェッチ タグを結合すると、それが最終ディレクトリになります。エラー レポートの情報を参照してください。取得するタグは v3.3

 {"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再度コンパイルすると、成功しました。

$ pkg -t win server.js
> pkg@5.6.0
ログイン後にコピー

ノード関連の知識については、
nodejs チュートリアル

を参照してください。

以上がpkg を使用して Node.js プロジェクトを実行可能ファイルにパッケージ化する方法について説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!