Selenium RemoteWebDriver和ChromeOptions,构造函数不可用?

时间:2019-08-08 21:18:52

标签: selenium selenium-chromedriver remotewebdriver

我在使用Java 1.8和3.141.59 jars创建新的RemoteWebDriver并传递ChromeOptions时遇到麻烦。见下文。 (我也想添加其他选项,但是在这一点上,我只是想让构造函数起作用)。

const JSONStream = require("JSONStream");

async parseData(event) {
    try {
        let objectStream = s3.getObject(params).createReadStream();
        const streamParser = JSONStream.parse("*");
        return new Promise((resolve, reject) => {
            objectStream.pipe(streamParser).on("data", async streamData => {
                streamParser.pause();
                let result = await writeData(streamData);
                streamParser.resume();
            }).on("finish", () => {
                console.log("STREAM FINISH!");
                resolve(true);
            }).on("error", e => {
                console.error("Stream error:", e);
                reject(e);
            });
        });
    } catch (e) {
        console.error(e);
    }
}

1 个答案:

答案 0 :(得分:0)

构造函数存在于selenium-remote-driver 3.141.59

enter image description here

很可能您在项目classpath中拥有selenium-remote-driver库的不同版本,或者另一个.jar在其transitive dependencies中具有selenium-remote-driver的另一个版本,因此您遭受Jar Hell

我建议您使用MavenGradle之类的依赖项管理解决方案,这样您就不必自己照顾依赖的.jar库,这将有助于您将来避免这种情况。 / p>