microsoft / microsoft/playwright-java

[ISSUE] FileSystemNotFoundException: Provider "bundleresource" not installed

未关闭
#495 8 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

P3-collecting-feedback
主要语言
Java
星标
1.6k
派生
298
平均合并
3 天 2 小时
30 天内合并 PR
14

描述

Hi,
I am using playwright version 1.2.0 and getting the "Provider "bundleresource" not installed" exception.

Stacktrace -

Caused by: java.lang.RuntimeException: Failed to create driver
	at com.microsoft.playwright.impl.Driver.ensureDriverInstalled(Driver.java:46)
	at com.microsoft.playwright.impl.PlaywrightImpl.create(PlaywrightImpl.java:33)
	at com.microsoft.playwright.Playwright.create(Playwright.java:76)
	at printjob.browser.ChromiumBrowser.<init>(ChromiumBrowser.java:18)
	at printjob.browser.ChromiumBrowser.getInstance(ChromiumBrowser.java:35)
	at printjob.PrintJob.getBrowserContext(PrintJob.java:28)
	at printjob.PrintJob.execute(PrintJob.java:35)

Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)[:1.8.0_172]
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)[:1.8.0_172]
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)[:1.8.0_172]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)[:1.8.0_172]
	at com.microsoft.playwright.impl.Driver.createDriver(Driver.java:65)
	at com.microsoft.playwright.impl.Driver.ensureDriverInstalled(Driver.java:44)
	... 34 more
Caused by: java.nio.file.FileSystemNotFoundException: Provider "bundleresource" not installed
	at java.nio.file.Paths.get(Paths.java:147)[:1.8.0_172]
	at com.microsoft.playwright.impl.DriverJar.extractDriverToTempDir(DriverJar.java:68)
	at com.microsoft.playwright.impl.DriverJar.<init>(DriverJar.java:32)

POM snippet-
I used maven bundle plugin OSGI for bundling/creating jar of my project.

<plugin>
    
<groupId>org.apache.felix</groupId>
    
     <artifactId>maven-bundle-plugin</artifactId>
    
     <version>5.1.2</version>
    
     <extensions>true</extensions>
    
     <configuration>
        
            <unpackBundle>true</unpackBundle>
        
            <instructions>
            
                    <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
                     
                    <Export-Package>com.project.html2pdf</Export-Package>
           
                    <Embed-Dependency>*;scope=compile</Embed-Dependency>
            
                   <Import-Package>sun.misc.*;resolution:=optional,*</Import-Package>
            
                   <Embed-Transitive>true</Embed-Transitive>
        
             </instructions>
   
        </configuration>

</plugin>


<dependency>
   
        <groupId>com.microsoft.playwright</groupId>
    
       <artifactId>playwright</artifactId>
    
       <version>1.12.0</version>
    
       <scope>compile</scope>

</dependency>
```


Can anyone please help resolve this issue?

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 DriverJar.extractDriverToTempDir 和 Driver.ensureDriverInstalled 开始,使用提供的堆栈跟踪来追踪 Maven Bundle Plugin 配置下的驱动程序提取过程。使用打包的应用程序和 Playwright 依赖项重现问题,然后验证 Playwright.create() 能够创建驱动程序,且不会出现 bundleresource FileSystemNotFoundException。

由索引模型根据 Issue 内容生成。

评估

技术栈
java
领域
testing-qa
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。