MongoCredential.createCredential()は、ドキュメントに従って有効なように見える引数に対してエラー応答をスローしています(Groovy with gmongo)。メソッドのシグネチャがありません。静的com.mongodb.MongoCredential.createCredential()
私が実行しようとしているコード:
@Grab(group='com.gmongo', module='gmongo', version='1.5')
import java.util.*;
import com.gmongo.GMongo
import com.gmongo.GMongoClient
import com.mongodb.MongoCredential
import com.mongodb.MongoClientOptions
import com.mongodb.client.MongoDatabase;
import com.mongodb.*
import com.mongodb.ServerAddress
import com.gmongo.*
import com.mongodb.MongoURI
import com.mongodb.DBCursor;
import com.mongodb.BasicDBObject;
import com.mongodb.BasicDBList
def mongoendpoint = context.expand('${#Project#mongoendpoint}')
def mongocollection=context.expand('${#Project#mongocollection_ignition}')
char[] password = 'password'.toCharArray();
def credentials = MongoCredential.createCredential(
context.expand('${#Project#MongoUser}'),
context.expand('${#Project#MongoDatabase}'),
password
// "password" as char[] doesn't work either
)
は、次のエラーを取得:
groovy.lang.MissingMethodException: No signature of method: static com.mongodb.MongoCredential.createCredential() is applicable for argument types: (java.lang.String, java.lang.String, [C) values: [elenalenenko, test, p7Aqmlt9FF!] Possible solutions: createPlainCredential(java.lang.String, java.lang.String, [C) error at line: 34
ドキュメントは構文が
static MongoCredential createCredential(String userName, String database, char[] password)
私のマシンでエラーを再現できません。あなたは完全なスタックトレースと文脈の定義を提供できますか? – aristotll
これは、ReadyAPI 2.2.0の問題でした。私はSmartBearの人たちからコメントを得てlibフォルダからmongo-java-driverを削除するようにアドバイスしました: "最後のバージョンでは、mongo-java-driver-2.12.3.jarドライバがReadyAPIに追加されましたReadyAPIは、ReadyAPI_Install \ bin \ extフォルダに追加したバージョンではなく、このドライバの古いバージョンを参照していました。 ReadyAPI 2.1.0では何も変更せずに正常に動作します – penazik