最近在做selenium+chromedriver的java截图时,将项目上传到服务器遇到此bug,
问题:项目在本地无次错误,但上传到服务器发生此错误,并且在测试后发现我们启动服务器的用户为普通用户,当切换为root用户,也没有问题能够正常截图。但是我们的环境最后不能使用root用户,所以得寻找其他解决方案。
经过多方测试后,发现普通用户对/tmp目录没有写的权限,需要添加w权限
解决:
sudo chmod 777 /tmp
错误详情如下,
2020-06-15 10:18:50.180 [http-nio-8180-exec-5] INFO com.jd.jr.risk.common.utils.ScreenshotUtil[175] - Generating Chrome driver (/export/chrome/chromedriver)...
Starting ChromeDriver 83.0.4103.39 (ccbf011cb2d2b19b506d844400483861342c20cd-refs/branch-heads/4103@{#416}) on port 1024
Only local connections are allowed.
Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
2020-06-15 10:18:50.499 [http-nio-8180-exec-5] ERROR com.jd.jr.risk.web.controller.DownController[109] - e=org.openqa.selenium.WebDriverException: unknown error: cannot create temp dir for unpacking extensions
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'YZ-222-23-133.h.chinabank.com.cn', ip: '10.222.23.133', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-693.el7.x86_64', java.version: '1.8.0_231'
Driver info: driver.version: ChromeDriver
remote stacktrace: #0 0x55eb9245a579 <unknown>
org.openqa.selenium.WebDriverException: unknown error: cannot create temp dir for unpacking extensions
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'YZ-222-23-133.h.chinabank.com.cn', ip: '10.222.23.133', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-693.el7.x86_64', java.version: '1.8.0_231'
Driver info: driver.version: ChromeDriver
remote st