메인 콘텐츠로 건너뛰기
Replit은 Replit App의 패키지를 설치하고 관리할 수 있는 여러 방법을 제공합니다. 을 사용해 패키지를 설치하거나, Agent에게 처리를 맡기거나, Replit App을 실행할 때 누락된 종속성을 Replit이 자동으로 감지하고 설치하도록 할 수 있습니다.

셀을 사용해 패키지 설치하기

프로젝트 편집기에서 도구를 열고 사용 중인 언어의 패키지 관리자에 맞는 명령을 실행합니다.
Replit의 Universal Package Manager(UPM)를 사용해 지원되는 여러 언어에서 패키지를 설치할 수도 있습니다.
특정 버전을 설치하려면 다음과 같이 실행합니다.
지원되는 모든 언어와 패키지 관리자는 UPM: 지원 언어를 참조하세요.

Agent를 사용해 패키지 설치하기

채팅에서 Agent에게 직접 패키지 설치를 요청할 수 있습니다. 예를 들어:
  • “axios 패키지를 설치해줘”
  • “내 프로젝트에 Flask와 SQLAlchemy를 추가해줘”
  • “TailwindCSS를 설정해줘”
Agent는 프로젝트에 맞는 패키지 관리자를 사용해 패키지를 설치하고 관련 구성 파일을 업데이트합니다.

자동 임포트 감지

Replit은 실행을 선택할 때마다 코드에서 누락된 종속성을 자동으로 분석합니다. 코드에서 아직 설치되지 않은 패키지를 임포트하면 Replit이 이를 감지하고 최신 버전을 자동으로 설치합니다. 예를 들어 main.pyimport flask를 추가하면 다음번에 실행을 선택할 때 콘솔Flask가 설치되고 있다는 메시지가 표시됩니다.
.replit 파일에서 packager.features.guessImports 설정을 사용해 자동 임포트 감지를 구성할 수 있습니다.

자동 감지 재정의

잘못된 패키지가 감지되었거나 특정 버전이 필요하다면 셀에서 올바른 설치 명령을 실행하세요. 예를 들어:
.replit 파일에서 특정 패키지나 경로를 자동 감지 대상에서 제외할 수도 있습니다.

Python 패키지 관리자

Python Replit App을 만들면 기본 패키지 관리자는 poetry입니다. 즉, pip install은 종속성을 관리하지 않습니다. 대신 셀에서 poetry add <package> 또는 upm add <package>를 사용하세요.

poetry에서 pip로 전환하기

pip 사용을 원한다면 다음 단계를 따르세요.
1
셀을 열고 다음을 실행합니다.패키징 인프라가 pip로 전환되도록 잠금 파일을 삭제합니다.
2

종속성 이동하기

pyproject.toml[tool.poetry.dependencies] 섹션에 있는 종속성을 requirements.txt로 옮기세요. 예를 들어 flask = "^3.0.2"flask>=3.0.2,<4가 됩니다.
3

pyproject.toml 정리하기

pyproject.toml에서 [tool.poetry...] 섹션을 삭제하세요.
이 작업을 마치면 패키징 인프라는 이후 모든 작업에 pip를 사용하며, 자동 임포트 감지도 예상대로 계속 동작합니다.

Nix를 활용한 시스템 종속성

Replit은 Nix와의 통합을 통해 모든 프로그래밍 언어를 지원합니다. 표준 언어 패키지 이상의 시스템 수준 종속성이 필요하다면 replit.nix 파일에 추가할 수 있습니다.

Nix 패키지

replit.nix를 직접 편집해 시스템 수준 종속성을 추가하세요. 사용 가능한 패키지는 search.nixos.org에서 검색할 수 있습니다.

모듈

모듈은 프로그래밍 언어, 포맷터, 패키저에 대한 지원을 결합합니다. 이는 Replit App의 기반을 제공합니다. 템플릿이나 GitHub 저장소로 Replit App을 만들면 Replit이 필요한 모듈을 자동으로 설치합니다. .replit 파일을 사용해 모듈과 기타 Nix 설정을 사용자 지정할 수 있습니다.

패키저 구성

.replit 파일에서 패키지 관리 동작을 세밀하게 조정할 수 있습니다.
설정설명기본값
packager.language패키지 작업에 사용되는 언어자동 감지됨
packager.features.guessImports실행 시 누락된 패키지를 자동으로 감지하고 설치true
packager.features.packageSearch패키지 검색 지원 활성화true
packager.features.enabledForHosting호스팅 시 패키지 설치 요구false
packager.afterInstall패키지 설치 후 실행할 명령
packager.ignoredPaths임포트 감지에서 제외할 경로[]
packager.ignoredPackages자동 감지에서 제외할 패키지[]