Вы просматриваете код для более старой версии GeoTools, вы всегда можете просмотреть Замечания по обновлению GeoTools , чтобы узнать, какие изменения необходимы для использования более новых версий библиотеки.
Вам нужна эта зависимость:
<dependency>
<groupId>systems.uom</groupId>
<artifactId>systems-common-java8</artifactId>
<version>0.7.2</version>
</dependency>
Имена пакетов изменены, что привело к некоторому общему поиску и замене при обновлении:
Поиск javax.measure.unit.Unit заменяет javax.measure.Unit
Поиск ConversionException заменяет IncommensurableException
Это проверенное исключение, в тех областях библиотеки GeoTools, где это было найдено, мы теперь возвращаем исключение IllegalArgument.
Поиск преобразователя == UnitConverter.IDENTITY заменяет converter.isIdentity ()
Поиск javax.measure.unit.NonSI заменить импорт si.uom.NonSI
Поиск javax.measure.unit.SI заменить импорт si.uom.SI
Поиск SI.METER заменяет SI.METRE
Поиск javax.measure.converter.UnitConverter заменяет javax.measure.UnitConverter
Поиск javax.measure.unit.UnitFormat заменяет импорт javax.measure.format.UnitFormat
Search Unit.ONE заменяет AbstractUnit.ONE
Поиск безразмерных.UNIT заменяет AbstractUnit.ONE
Поиск Unit.valueOf (unitString) заменяет Units.parseUnit (unitString)
А для использования Quanaties:
Использование единиц измерения
Если ранее вы использовали единицы в своем коде, чтобы помочь с
преобразование единиц или просто чтобы сохранить единицы прямо. Ты можешь иметь
код как:
Measure<Double, Length> dist = Measure.valueOf(distance, SI.METER);
System.out.println(dist.doubleValue(SI.KILOMETER) + " Km");
System.out.println(dist.doubleValue(NonSI.MILE) + " miles");
Вы найдете, что он больше не компилируется. Он должен быть преобразован для использования
Количество классов.
import javax.measure.Quantity;
import javax.measure.quantity.Length;
import si.uom.SI;
import systems.uom.common.USCustomary;
import tec.uom.se.quantity.Quantities;
import tec.uom.se.unit.MetricPrefix;
Quantity<Length> dist = Quantities.getQuantity(distance, SI.METRE);
System.out.println(dist.to(MetricPrefix.KILO(SI.METRE)).getValue() + " Km");
System.out.println(dist.to(USCustomary.MILE) + " miles");