pkg를 사용하여 Node.js 프로젝트를 실행 파일로 패키징하는 방법에 대해 이야기해 보겠습니다.
nodejs 실행 파일을 pkg로 패키징하는 방법은 무엇인가요? 다음 글에서는 pkg를 사용하여 Node 프로젝트를 실행 파일로 패키징하는 방법을 소개하겠습니다. 도움이 되길 바랍니다.
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
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Non-Blocking, Event-Driven 기반으로 구축된 Node 서비스는 메모리 소모가 적다는 장점이 있으며, 대규모 네트워크 요청을 처리하는데 매우 적합합니다. 대규모 요청을 전제로 '메모리 제어'와 관련된 문제를 고려해야 합니다. 1. V8의 가비지 수집 메커니즘과 메모리 제한 Js는 가비지 수집 기계에 의해 제어됩니다.

이 기사는 NodeJS V8 엔진의 메모리 및 가비지 수집기(GC)에 대한 심층적인 이해를 제공할 것입니다. 도움이 되기를 바랍니다.

파일 업로드를 처리하는 방법은 무엇입니까? 다음 글에서는 Express를 사용하여 노드 프로젝트에서 파일 업로드를 처리하는 방법을 소개하겠습니다. 도움이 되길 바랍니다.

파일 모듈은 파일 읽기/쓰기/열기/닫기/삭제 추가 등과 같은 기본 파일 작업을 캡슐화한 것입니다. 파일 모듈의 가장 큰 특징은 모든 메소드가 **동기** 및 ** 두 가지 버전을 제공한다는 것입니다. 비동기**, sync 접미사가 있는 메서드는 모두 동기화 메서드이고, 없는 메서드는 모두 이기종 메서드입니다.

이 기사에서는 Node의 프로세스 관리 도구인 "pm2"를 공유하고 pm2가 필요한 이유, pm2 설치 및 사용 방법에 대해 설명합니다. 모두에게 도움이 되기를 바랍니다!

Pinetwork 노드에 대한 자세한 설명 및 설치 안내서이 기사에서는 Pinetwork Ecosystem을 자세히 소개합니다. Pi 노드, Pinetwork 생태계의 주요 역할을 수행하고 설치 및 구성을위한 전체 단계를 제공합니다. Pinetwork 블록 체인 테스트 네트워크가 출시 된 후, PI 노드는 다가오는 주요 네트워크 릴리스를 준비하여 테스트에 적극적으로 참여하는 많은 개척자들의 중요한 부분이되었습니다. 아직 Pinetwork를 모른다면 Picoin이 무엇인지 참조하십시오. 리스팅 가격은 얼마입니까? PI 사용, 광업 및 보안 분석. Pinetwork 란 무엇입니까? Pinetwork 프로젝트는 2019 년에 시작되었으며 독점적 인 Cryptocurrency Pi Coin을 소유하고 있습니다. 이 프로젝트는 모든 사람이 참여할 수있는 사람을 만드는 것을 목표로합니다.

이벤트 루프는 Node.js의 기본 부분이며 메인 스레드가 차단되지 않도록 하여 비동기 프로그래밍을 가능하게 합니다. 이벤트 루프를 이해하는 것은 효율적인 애플리케이션을 구축하는 데 중요합니다. 다음 기사는 Node.js의 이벤트 루프에 대한 심층적인 이해를 제공할 것입니다. 도움이 되기를 바랍니다!

노드가 npm 명령을 사용할 수 없는 이유는 환경 변수가 올바르게 구성되지 않았기 때문입니다. 해결 방법은 다음과 같습니다. 1. "시스템 속성"을 엽니다. 2. "환경 변수" -> "시스템 변수"를 찾은 다음 환경을 편집합니다. 3. nodejs 폴더의 위치를 찾습니다. 4. "확인"을 클릭합니다.
