Как я могу использовать natty-master?
Я должен использовать natty-master в моем проекте Android. Но я не мог импортировать это. Как я могу использовать Natty без Maven? Я нахожу эти коды, я добавил банки, но это не работает.
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.joestelmach.natty.*;
public class natty {
public static void main(String[] args) {
Parser parser = new Parser();
List<DateGroup> groups = parser.parse("the day before next thursday");
for(DateGroup group:groups) {
Date dates = group.getDates().get(0);
int line = group.getLine();
int column = group.getPosition();
String matchingValue = group.getText();
String syntaxTree = group.getSyntaxTree().toStringTree();
Map parseMap = group.getParseLocations();
boolean isRecurreing = group.isRecurring();
Date recursUntil = group.getRecursUntil();
}
}
}
1 ответ
Я исследовал это для вас немного.
Я предполагаю, что вы используете Eclipse с текущей версией плагина ADT. Для начала давайте удостоверимся, что вы правильно добавляете банки:
- Вы должны создать папку с именем
libs
на корневом уровне вашего проекта (наряду сsrc
,res
, так далее.). - Скопируйте сторонние банки в
libs
, - Щелкните правой кнопкой мыши по проекту и выполните команду "Обновить", ADT обнаружит библиотеки и добавит их как зависимости Android.
Теперь для библиотек. Все зависимости natty-07.jar
перечисленные Maven являются:
antlr-2.7.7.jar
antlr-runtime-3.2.jar
backport-util-concurrent-3.1.jar
commons-codec-1.5.jar
commons-lang-2.6.jar
commons-logging-1.1.1.jar
ical4j-1.0.2.jar
stringtemplate-3.2.jar
Да, это 2,3 МБ зависимостей, которые вы должны скопировать в libs
,
Я не думаю, что все они необходимы во время выполнения, но я не могу сказать, какие из них являются решающими.
Использование ProGuard, вероятно, могло бы уменьшить некоторые из них, но это уже другая история.
Я создал быстрое и грязное приложение с minSdkVersion="8" и targetSdkVersion="17". Затем поместите предоставленный вами пример кода в Activity и запустите его для ввода: "the day before next thursday"
, В результате я получил одну группу с датой [Wed May 22 16:52:49 GMT 2013]
что нормально, так как сегодня пятница 17 мая.
Редактировать 2013-06-02
необходимый код:
http://pastebin.com/XrF5k10M
полное решение:
https://www.dropbox.com/sh/qk2cs51twrpobuz/YaFZWiG5jP/Stackru/16610375/NattyApp.zip