티스토리 뷰
System.setProperty("PLAYWIGHT_BROWSER_PATH","C:\\AAA\\chrome-win");
하.. 힘들다. 자바 이클립스 playwright offline 에서 설치하는 방법을 많은 시행착오를 거친 끝에 공유해보겠다.
일단 인터넷 되는 환경에서는 잘 된다. 아주 편하게.. 그러나.. offline으로 오면 장난아니다..
일단 인터넷 되는 환경에서는 이클립스에서 먼저 maven 프로젝트를 만드는 것은 어렵지 않다.
하지만 offline 환경에서는 메이븐 프로젝트를 만드는 순간 에러가 발생할 것이다.
그래서 구글링을 해보니 메이븐을 먼저 설치를 해야 되더라.
https://blog.naver.com/lbr71004/222265471102
이클립스_Maven(메이빈) 환경설정
# Maven Apache Maven은 자바용 프로젝트 관리도구입니다. Ant의 대안으로 만들어졌으며 오픈 소스 소...
blog.naver.com
이 블로그가 많이 도움이 되었다.
Maven
Apache Maven은 자바용 프로젝트 관리도구입니다. Ant의 대안으로 만들어졌으며 오픈 소스 소프트웨어입니다. 라이브러리를 특정 문서(pom.xml)에 정의해 놓으면 네트워크를 통해 라이브러리를 자동으로 다운받아 관리합니다.
- 라이브러리의 관리를 용이하게 해줍니다.
- 프로젝트의 작성부터 컴파일, 프로젝트 라이프사이클에 포함하는 각 테스트를 지원합니다.
- war 파일 기반의 배포용으로 자주 사용됩니다.
//! 한번 환경설정을 해주면 이클립스를 변경하지 않는한(컴퓨터 변경 또는 새로 다운로드 하지 않는한), 매 프로젝트 진행때마다 설정해 줄 필요는 없다.
Maven 다운로드
# 1. apache-maven-3.6.3-bin.zip를 다운받아 압축을 풀고 작업폴더 내에 저장합니다.
예) C:\AAA\Jsp\apache-maven-3.6.3
# Maven 다운로드
http://maven.apache.org/download.cgi
Download Apache Maven – Maven
Downloading Apache Maven 3.9.11 Apache Maven 3.9.11 is the latest release: it is the recommended version for all users. System Requirements Java Development Kit (JDK) Maven 3.9+ requires JDK 8 or above to execute. It still allows you to build against 1.3 a
maven.apache.org
Downloading Apache Maven 3.9.11
apache-maven-3.9.11-bin.zip |
위 파일을 다운 받았다.
https://blog.naver.com/lbr71004/222265471102
이클립스_Maven(메이빈) 환경설정
# Maven Apache Maven은 자바용 프로젝트 관리도구입니다. Ant의 대안으로 만들어졌으며 오픈 소스 소...
blog.naver.com
환경설정은 또 다른 글에 있구만..
위 블로그가 쉽게 잘 나와있다. 따라 가기만 하면 잘 되었다.
1. 다운받은 apache-maven-3.6.3-bin.zip를 압축을 풀고 작업폴더 내에 저장합니다.
2. 환경변수 등록을 작업폴더 \apache-maven-3.6.3-bin\bin
예)C:\AAA\Jsp\apache-maven-3.6.3-bin\bin (* 내가 사용하는 폴더의 경로이다)
# - 내pc > 속성 > 고급 시스템 설정 > 환경변수 > 시스템 변수의 path > 편집 > 새로만들기

5. 이클립스 -> window -> preferences -> 왼쪽 메뉴 maven - user settings를 선택 -> user settings의 찾아보기를 클릭 -> C:\AAA\Jsp\apache-maven-3.6.3-bin\confsettings.xml 를 선택하고 open file을 클릭
6. <localRepository> 요소를 찾아 주석을 제거하고 신규로 생성한 폴더의 위치로 입력을 합니다.
예) <localRepository>C:\AAA\Jsp\apache-maven-3.6.3-bin\apache-maven-3.6.3\repository</localRepository>
✅ 1. Playwright Chromium 다운로드 방지
🔧 방법: 환경변수 설정
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=true 를 설정합니다.
Eclipse에서 설정 방법:
- Run → Run Configurations… 클릭
- 왼쪽에서 Java Application 선택 → 실행 대상 클래스 선택
- 탭에서 Environment 선택 → New... 클릭
- Name: PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD
- Value: true
- Apply → Run
package com.play.ptest;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.BrowserType;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;
public class App
{
public static void main(String[] args) {
try (Playwright playwright = Playwright.create()) {
Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(false));
Page page = browser.newPage();
page.navigate("https://naver.com");
System.out.println("제목: " + page.title());
}
}
}
에러가 발생할 것이다. 다운로드를 받는 중.. 머 이런 에러.. offline은 다운이 안되니..
그래서
package com.play.ptest;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.BrowserType;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;
public class App
{
public static void main(String[] args) {
try (Playwright playwright = Playwright.create()) {
Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setExecutablePath(Paths.get("C:\\AAA\\chrome-win\\chrome.exe")).setHeadless(false));
Page page = browser.newPage();
page.navigate("https://naver.com");
System.out.println("제목: " + page.title());
}
}
}
에러가 나서 chatgtp 한테 물어봤는데 setExecutablePath("C:\\AAA") 이렇게 넣으라고 했는데 그래도 에러가 났다.
Paths.get 해줬더니 에러가 안났다.
참 놓친게 있는데 상단에 아래 코드를 써야 한다.
System.setProperty("PLAYWRIGHT_BROWSER_PATH","C:\\AAA\\chrome-win");
즉, 결론은
package com.play.ptest;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.BrowserType;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;
public class App
{
public static void main(String[] args) {
System.setProperty("PLAYWRIGHT_BROWSER_PATH","C:\\AAA\\chrome-win");
try (Playwright playwright = Playwright.create()) {
Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setExecutablePath(Paths.get("C:\\AAA\\chrome-win\\chrome.exe")).setHeadless(false));
Page page = browser.newPage();
page.navigate("https://naver.com");
System.out.println("제목: " + page.title());
}
}
}
지금보니까 System.setProperty 부분은 없어도 된다.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>playwright-test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<!-- Playwright Java 라이브러리 -->
<dependency>
<groupId>com.microsoft.playwright</groupId>
<artifactId>playwright</artifactId>
<version>1.45.0</version> <!-- 버전 확인 필요 -->
</dependency>
</dependencies>
<build>
<plugins>
<!-- Java 17 이상을 사용한다면 아래처럼 설정 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.11.0</version>
<configuration>
<source>16</source>
<target>16</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
pom.xml
'자바(Java)' 카테고리의 다른 글
org.apache.camel.CamelExecutionException: Exception occured during execution on (0) | 2025.04.24 |
---|---|
org.apache.ibatis.binding.BindingException: Type interface Mapper is not known to the MapperRegistry (0) | 2025.04.23 |
자바 mybatis java.sql.SQLException No database selected null (0) | 2025.04.02 |
자바 스프링 ${}의 의미 (0) | 2025.03.04 |
자바 파일읽을때 한글 깨짐 해결 (0) | 2024.07.25 |
- Total
- Today
- Yesterday
- xe애드온
- KG
- C
- 오라클
- 자바
- ocjap
- MySQL
- proc
- 인포믹스
- XE
- JDBC
- 스크래핑
- 라이믹스
- 포인터
- xe addon
- 플러터
- 이클립스
- 자바 smtp
- C언어
- webix
- 문자열
- 프로씨
- 파싱
- XE3
- Python
- ocajp
- php
- 파이썬
- esql
- EC
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |