Как получить var / lib / rpm / packages в Java

Я использую Java Oracle NoSQL Database Server - com.sleepycat.je

<dependency>
        <groupId>com.sleepycat</groupId>
        <artifactId>je</artifactId>
        <version>18.3.12</version>
 </dependency>

И я пытаюсь получить содержимое Berkely DB - RPM Packages DB в образе докера Centos8

import com.sleepycat.je.DatabaseException;
import com.sleepycat.je.Environment;
import com.sleepycat.je.EnvironmentConfig;

import java.io.File;

public class TempMain {
public static void main(String[] args) {
    Environment myDbEnvironment = null;

    try {
        // Open the environment, creating one if it does not exist
        EnvironmentConfig envConfig = new EnvironmentConfig();
        envConfig.setAllowCreate(true);
        myDbEnvironment = new Environment(new File("C:\\Centos8\\LayerId\\var\\lib\\rpm\\Packages"),
                envConfig);

    } catch (DatabaseException dbe) {
        //  Exception handling
    }
}
}

Но я получаю следующую ошибку:

Exception in thread "main" java.lang.IllegalArgumentException: Malformed \uxxxx encoding.
at java.util.Properties.loadConvert(Properties.java:574)
at java.util.Properties.load0(Properties.java:391)
at java.util.Properties.load(Properties.java:341)
at com.sleepycat.je.dbi.DbConfigManager.applyFileConfig(DbConfigManager.java:449)
at com.sleepycat.je.Environment.setupHandleConfig(Environment.java:313)
at com.sleepycat.je.Environment.<init>(Environment.java:250)
at com.sleepycat.je.Environment.<init>(Environment.java:228)

1 ответ

Ваша проблема наверняка связана с Пути, который я бы рекомендовал

1. заменить \ на File.pathSeparator

2.При отладке убедитесь, что файл существует перед его использованием

Другие вопросы по тегам