小编Mee*_*ott的帖子

在pom中添加硒依赖项后,AWS Lambda Jar无法压缩

这是一个奇怪的错误。在将硒依赖项添加到我的maven项目的pom并将其上传到lambda之后,它说无法解压缩文件。但是,在删除依赖项之后,lambda能够很好地解压缩文件(但是它附带了后来未找到的类)。我尝试过一个一个地删除依赖项,但每个依赖项都会触发错误。

关于如何解决这个问题的任何想法?

找不到类错误

org/openqa/selenium/WebDriver: java.lang.NoClassDefFoundError
java.lang.NoClassDefFoundError: org/openqa/selenium/WebDriver
Run Code Online (Sandbox Code Playgroud)

Lambda无法压缩错误

Calling the invoke API action failed with this message: Lambda was not able to unzip the file
Run Code Online (Sandbox Code Playgroud)

导致问题的依赖项

    <dependency>
        <groupId>org.seleniumhq.webdriver</groupId>
        <artifactId>webdriver-common</artifactId>
        <version>0.9.7376</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-chrome-driver</artifactId>
        <version>3.141.59</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.141.59</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

更新的依赖关系(对于Vishal)

    <dependency>
        <groupId>org.seleniumhq.webdriver</groupId>
        <artifactId>webdriver-common</artifactId>
        <version>0.9.7376</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-chrome-driver</artifactId>
        <version>3.141.59</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.141.59</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-api</artifactId>
        <version>2.0rc2</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-remote-driver</artifactId>
        <version>3.141.59</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-support</artifactId>
        <version>3.141.59</version>
    </dependency>

Run Code Online (Sandbox Code Playgroud)

组态

 <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.6.0</version>
        <configuration> …
Run Code Online (Sandbox Code Playgroud)

java selenium maven aws-lambda

7
推荐指数
1
解决办法
176
查看次数

CreatePlatformSocket() 失败:协议不支持地址系列,并且无法在 AWS Lambda 中使用 WebDriverManager 找到 chrome 二进制文件

我不知道我做错了什么,但由于某种原因,尽管我使用 WebDriverManager,但它无法找到 chrome 二进制文件。我将日志放在下面以供参考,但据说它找不到二进制文件(或者无法下载二进制文件?)我到处都发现了类似的问题,但似乎没有一个解决方案有效。

设置

WebDriverManager.chromedriver()
        .targetPath("/tmp")
        .setup();
ChromeOptions options = new ChromeOptions();
options.addArguments(
        "--no-sandbox",
        "--disable-gpu",
        "--enable-javascript",
        "disable-infobars",
        "--disable-dev-shm-usage",
        "--disable-extensions",
        "--headless",
        "--user-data-dir=/tmp/user-data",
        "--data-path=/tmp/data-path",
        "--homedir=/tmp",
        "--disk-cache-dir=/tmp/cache-dir",
        "window-size=1400,600",
        "log-level=3");
this.driver = (WebDriver) new ChromeDriver(options);
this.driver.manage().deleteAllCookies();
this.driver.manage().window().fullscreen();
Run Code Online (Sandbox Code Playgroud)

聚甲醛

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>3.10.0</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.webdriver</groupId>
    <artifactId>webdriver-common</artifactId>
    <version>0.9.7376</version>
</dependency>

<dependency>
    <groupId>io.github.bonigarcia</groupId>
    <artifactId>webdrivermanager</artifactId>
    <version>3.7.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

日志

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Nov 01, 2019 9:41:27 AM java.util.prefs.FileSystemPreferences$1 run
WARNING: Couldn't create …
Run Code Online (Sandbox Code Playgroud)

java selenium selenium-chromedriver aws-lambda webdrivermanager-java

5
推荐指数
1
解决办法
1万
查看次数