0
Java에서 GeoIP2를 사용하여 IP 주소를 maxmind 데이터베이스의 위치 정보로 변환하고 있습니다.Java Geoip2 : "java.lang.reflect.InvocationTargetException"예외 발생
내 자바 코드 : 내 독자를 빌드 할 때 내가 java.lang.reflect.InvocationTargetException
예외를 얻고있다
try {
ClassLoader classLoader = getClass().getClassLoader();
File database = new File(classLoader.getResource("GeoLite2-City.mmdb").getFile());
DatabaseReader reader = new DatabaseReader.Builder(database).build();
InetAddress ipAddress = InetAddress.getByName(ip);
CityResponse response = reader.city(ipAddress);
City city = response.getCity();
...
} catch (UnknownHostException e) {
logger.logError(getClass(), "getGeoIp", " transactionId:" + transactionId + " > " + e.getMessage(), null);
} catch (IOException e) {
logger.logError(getClass(), "getGeoIp", " transactionId:" + transactionId + " > " + e.getMessage(), null);
} catch (GeoIp2Exception e) {
logger.logError(getClass(), "getGeoIp", " transactionId:" + transactionId + " > " + e.getMessage(), null);
}
. 잭슨 버전 (2.5.3)은 geoip2와 호환되지 않는다고 생각합니다. 그러나 나는 고칠 수 없다.
내 실행 종속 버전은 다음과 같습니다
<dependency>
<groupId>com.maxmind.geoip2</groupId>
<artifactId>geoip2</artifactId>
<version>2.8.1</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>