相关疑难解决方法(0)

为什么我在Java中获得NoClassDefFoundError?

NoClassDefFoundError当我运行我的Java应用程序时,我得到了一个.这通常是什么原因?

java noclassdeffounderror

505
推荐指数
9
解决办法
69万
查看次数

maven插件之间的区别(程序集插件,jar插件,阴影插件)

我是maven的初学者,现在我对这些maven插件之间的区别感到困惑.这些都是创建jar文件吗?现在我的问题是

  1. 每个插件中创建的jar之间有什么区别.(程序集插件,jar-plugin,着色插件)

  2. 每个插件的目的.(程序集,jar插件,阴影插件)

  3. 我知道即使没有指定任何这些插件,一旦输入mvn package就会有一个jar输出.没有这些插件的输出jar和带有这些插件的输出jar有什么区别?TIA

java apache plugins jar maven

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

如何通过 Java 驱动程序正确连接到 Atlas M0(免费层)集群?

尝试使用MongoDB 3.6 版通过 Java 驱动程序连接 Atlas 集群。

所以,我写的是:

 MongoClientURI uri = new MongoClientURI("mongodb+srv://admin:mypassword@cluster0-ox90k.mongodb.net/test?retryWrites=true");
 MongoClient mongoClient = new MongoClient(uri);
Run Code Online (Sandbox Code Playgroud)

在这种情况下,错误是:

java.lang.IllegalArgumentException: The connection string is invalid. Connection strings must start with 'mongodb://'
    at com.mongodb.ConnectionString.<init>(ConnectionString.java:203)
    at com.mongodb.MongoClientURI.<init>(MongoClientURI.java:176)
    at com.mongodb.MongoClientURI.<init>(MongoClientURI.java:158)
    at project.Bot.check(Bot.java:30)
    at project.Bot.onUpdateReceived(Bot.java:104)
    at java.util.ArrayList.forEach(ArrayList.java:1249)
    at org.telegram.telegrambots.generics.LongPollingBot.onUpdatesReceived(LongPollingBot.java:27)
    at org.telegram.telegrambots.updatesreceivers.DefaultBotSession$HandlerThread.run(DefaultBotSession.java:309)
Run Code Online (Sandbox Code Playgroud)

当程序以使用 MongoDB 3.6 或更高版本的代码段开始时,没有+srv

MongoClientURI uri = new MongoClientURI("mongodb://admin1:mypassword@cluster0-ox90k.mongodb.net/test?retryWrites=true");
MongoClient mongoClient = new MongoClient(uri);
Run Code Online (Sandbox Code Playgroud)

我收到一个错误: 在此处输入图片说明

com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting for a server that matches ReadPreferenceServerSelector{readPreference=primary}. …
Run Code Online (Sandbox Code Playgroud)

java intellij-idea mongodb

8
推荐指数
1
解决办法
7273
查看次数

使用 MongoDB 驱动程序时出现 java.lang.NoClassDefFoundError

我正在尝试使用 servlet 上的 Java 驱动程序连接到托管在 mlab 上的 MongoDB 数据库。

import org.bson.Document; 
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;

public class MongoConnection {

    protected void connectToMongo(String loc){

        String dbName = "readings";
        String collection = "data";

        MongoClientURI uri = new MongoClientURI("mongodb://user:pass@ds143109.mlab.com:43109/readings");
        MongoClient client = new MongoClient(uri);
        MongoDatabase db = client.getDatabase(dbName);

        MongoCollection<Document> readings = db.getCollection(collection);

        Document doc = Document.parse(loc);

        readings.insertOne(doc);

        client.close();
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是我收到以下错误: java.lang.NoClassDefFoundError: com/mongodb/MongoClientURI

我查看了一个答案(How to resolve ClassNotFoundException: com.mongodb.connection.BufferProvider?),向我强调我需要其他 jars,我已经下载了它们,但是我仍然收到这个错误。

我正在使用 Eclipse 并将三个 jar 添加到构建路径中,通过右键单击项目然后按照Build Path -> …

java eclipse noclassdeffounderror mongodb mlab

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

org.openqa.selenium.remote.service.DriverService $ Builder.createArgs()Lcom / google / common / collect / ImmutableList; 使用Selenium 3.5.3 Chrome 76

我正在用IntelliJ编写Selenium Junit测试。如果我直接从测试中触发,则测试运行正常。但是,如果我使用JunitCore触发了来自TestRunnerSuite的测试,则会遇到以下奇怪的错误,在谷歌搜索后我找不到解决方案。在DriverService $ builder上有类似的问题,但不是我的错误类型。

[main] ERROR sire.responseOrg.TestIncidents - java.lang.AbstractMethodError: org.openqa.selenium.remote.service.DriverService$Builder.createArgs()Lcom/google/common/collect/ImmutableList;
    at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:332)
    at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:88)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
    at sire.responseOrg.WebDrivers.getInstance(WebDrivers.java:15)
    at sire.responseOrg.util.util1.setupChromeDriver(util1.java:51)
    at sire.responseOrg.Test1.setUp(Test1.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at ......Omitted
    at org.junit.runner.JUnitCore.run(JUnitCore.java:127)
    at org.junit.runner.JUnitCore.runClasses(JUnitCore.java:76)
    at sire.responseOrg.TestSuiteRunner.main(TestSuiteRunner.java:24)
Run Code Online (Sandbox Code Playgroud)

我正在使用Selenium 3.5.3和chrome76。--->已更新为Selenium 3.141.59,并具有main范围。
现在出现错误

java.lang.NoClassDefFoundError: org/apache/http/auth/Credentials
    at org.openqa.selenium.remote.HttpCommandExecutor.getDefaultClientFactory(HttpCommandExecutor.java:93)
    at org.openqa.selenium.remote.HttpCommandExecutor.<init>(HttpCommandExecutor.java:72)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.<init>(DriverCommandExecutor.java:63)
    at org.openqa.selenium.chrome.ChromeDriverCommandExecutor.<init>(ChromeDriverCommandExecutor.java:36)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:181)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:168)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
    at sire.responseOrg.WebDrivers.getInstance(WebDrivers.java:15)
    at sire.responseOrg.util.SeleniumUtil.setupChromeDriver(SeleniumUtil.java:62)
    at sire.responseOrg.TestIncidents.setUp(TestIncidents.java:29)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
    at …
Run Code Online (Sandbox Code Playgroud)

java selenium guava selenium-chromedriver junit-runner

3
推荐指数
1
解决办法
185
查看次数