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

Op 생산 과정

  • PKG 다운로드

전역적으로 설치하고 모든 디렉터리에서 실행할 수 있습니다:

$ npm install -g pkg
로그인 후 복사
  • 패키징 프로그램

먼저 server.js 콘텐츠와 같은 간단한 프로그램을 작성하세요

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용으로만 컴파일된다는 의미입니다.

두 번째 오류가 보고되었습니다

컴파일 중에 오류가 다시 보고되었습니다.

$ 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:
로그인 후 복사

주요 아이디어는 해당 바이너리 파일 fetched-v16.14.2-win-x64가 캐시에 없다는 것입니다. 해당 파일을 다운로드하여 해당 캐시에 넣으십시오.

1. 공식 웹사이트로 이동하여 해당 버전 파일을 다운로드하세요. 예를 들어 내 파일은 node-v16.14.2-win-x64

공식 웹사이트 주소: https://github.com/vercel/pkg- fetch/releases

pkg를 사용하여 Node.js 프로젝트를 실행 파일로 패키징하는 방법에 대해 이야기해 보겠습니다.

2. 이전 단계에서 다운로드한 node-v16.14.2-win-x64 파일의 이름을 fetched-v16.14.2-win-x64로 변경하고 현재 사용자의 캐시 디렉터리에 넣습니다.

예를 들어 내 캐시 디렉터리는 C:UsersMangoDowner.pkg-cache입니다. fetch 태그를 연결하면 이 디렉터리가 최종 디렉터리가 됩니다. 오류 보고서의 정보를 참조하면 태그가 v3.3임을 알 수 있습니다.

 {"tag":"v3.3","name":"node-v16.14.2-win-x64"}
로그인 후 복사

최종 상위 디렉터리는 C:UsersMangoDowner.pkg-cachev3.3입니다.
따라서 최종 파일 주소는 C:UsersMangoDowner.pkg-cachev3.3fetched-v16.14.2-win-x64

다시 컴파일하세요. 성공!

$ pkg -t win server.js
> pkg@5.6.0
로그인 후 복사

노드 관련 지식을 더 보려면 nodejs 튜토리얼을 방문하세요!

위 내용은 pkg를 사용하여 Node.js 프로젝트를 실행 파일로 패키징하는 방법에 대해 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:segmentfault.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!