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

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

青灯夜游
풀어 주다: 2022-07-29 21:03:34
앞으로
3917명이 탐색했습니다.

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으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿