>  기사  >  웹 프론트엔드  >  pkg를 사용하여 Node.js 프로젝트를 실행 파일로 패키징하는 방법은 무엇입니까?

pkg를 사용하여 Node.js 프로젝트를 실행 파일로 패키징하는 방법은 무엇입니까?

青灯夜游
青灯夜游앞으로
2022-07-26 19:33:143755검색

nodejs 실행 파일을 pkg로 패키징하는 방법은 무엇인가요? 다음 글에서는 pkg를 사용하여 Node 프로젝트를 실행 파일로 패키징하는 방법을 소개하겠습니다. 도움이 되길 바랍니다.

pkg를 사용하여 Node.js 프로젝트를 실행 파일로 패키징하는 방법은 무엇입니까?

pkg를 사용하면 Node.js 프로젝트를 Node.js가 설치되지 않은 장치에서도 실행할 수 있는 실행 파일로 패키징할 수 있습니다.

실험 환경

  • 운영 체제: windows

  • 노드 버전: 16.14.2

작업 프로세스

  • 패키지 다운로드

우리는 선택할 수 있습니다 global 설치하려면 아무 디렉터리에서나 실행하세요:

$ npm install -g pkg
  • Packaging program

먼저 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');
});
와 같은 간단한 프로그램을 작성하세요

$ pkg server.js
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'
첫 번째 오류가 보고됩니다

이번에는 오류가 보고됩니다

$ pkg -t win server.js
일반적인 생각은 현재 환경은 Windows 시스템으로 컴파일된 실행 파일, 즉 win

만 지원한다는 것입니다. 조정 명령은 다음과 같습니다.

$ 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:
여기서 -t win은 --targets win과 동일합니다. 즉, 파일은 Windows용으로만 컴파일됩니다.

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

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

 {"tag":"v3.3","name":"node-v16.14.2-win-x64"}
주요 아이디어는 해당 바이너리 파일 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임을 알 수 있습니다.

$ pkg -t win server.js
> pkg@5.6.0

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

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

rrreee노드 관련 지식을 더 보려면 nodejs 튜토리얼

을 방문하세요! 🎜

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

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제