Решение: добавить в CMakeList.txt
SET_TARGET_PROPERTIES(omp1 PROPERTIES COMPILE_FLAGS "-fopenmp"
LINK_FLAGS "-fopenmp")
P.s. omp1 - назовите ваш проект.
P.p.s. Также вы можете написать target_link_libraries(omp1 -fopenmp)
Вы можете написать собственный адаптер (не используя XmlAdapter JAXB), выполнив следующее:
1) объявите класс, который принимает все виды элементов и имеет аннотации JAXB и обрабатывает их так, как вы хотите (в моем примере я конвертирую все в String)
@YourJAXBAnnotationsGoHere
public class MyAdapter{
@XmlElement // or @XmlAttribute if you wish
private String content;
public MyAdapter(Object input){
if(input instanceof String){
content = (String)input;
}else if(input instanceof YourFavoriteClass){
content = ((YourFavoriteClass)input).convertSomehowToString();
}else if(input instanceof .....){
content = ((.....)input).convertSomehowToString();
// and so on
}else{
content = input.toString();
}
}
}
// I would suggest to use a Map<Class<?>,IMyObjToStringConverter> ...
// to avoid nasty if-else-instanceof things
2) используйте этот класс вместо E в вашем классе, который нужно маршалировать
ПРИМЕЧАНИЯ
Таким образом, похоже, что проблема заключается в удалении E
на начала
и конца
сопоставимо
]. Если он не может обрабатывать интерфейсы, вы можете попробовать Object
, но я надеюсь, что он тоже будет жаловаться (сейчас или позже). Возможно, вы могли бы сделать Range
абстрактным и специализировать его для каждого конкретного E
. Я должен знать больше о JAXB.
Как насчет
public class Range<**E extends Number**> implements Serializable { ...
Число - это класс
Бьюсь об заклад, JAXB знает правила по умолчанию правила маршаллинга / демаршаллинга для номера
Для отмены маршалинга для определенного типа вам нужен XmlAdapter как я здесь описано: Наследование JAXB, немаршалирование на подкласс маршалированного класса
Попробуйте что-то вроде Simple XML Serialization it поставляется с поддержкой универсальных типов в элементах XML с рядом аннотаций, таких как @Element и @ElementList. Модель программирования очень похожа, но проще, чем JAXB.
На самом деле, мне не совсем понятно, почему это не будет работать. Похоже, JAXB должен быть способен правильно разрешать определенный подтип: если (и только если!) Этот тип не является корневым типом (который он не согласно вашему описанию). Я имею в виду, это всего лишь боб; Таким образом, если боб с T заменен прямым типом работает, поэтому должна быть универсальная версия IFF с использованием подкладка для типов привязки (как это сделано в примере).
Так что, возможно, это может быть ошибка в реализации?