Простой метод расширения для копирования всех общедоступных свойств. Работает для любых объектов и не требует, чтобы класс был [Serializable]
. Может быть расширен для другого уровня доступа.
public static void CopyTo( this object S, object T )
{
foreach( var pS in S.GetType().GetProperties() )
{
foreach( var pT in T.GetType().GetProperties() )
{
if( pT.Name != pS.Name ) continue;
( pT.GetSetMethod() ).Invoke( T, new object[]
{ pS.GetGetMethod().Invoke( S, null ) } );
}
};
}
Приведенное выше решение работает нормально, но снова и снова всплывает. Более простое решение - щелкнуть правой кнопкой мыши по соответствующему проекту в Eclipse и выбрать Validate.
Для меня ни один из них не работал. Решение для меня удаляло следующий файл, в то время как Eclipse был остановлен:
/workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/myprojectname/.markers
попытайтесь добавить эту строку в .project
файл
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
Или обратитесь к это обсуждение : например, удостоверьтесь, что нет никаких дублирующихся записей в .sessions/org.eclipse.wst.common.component
, Как отмечено в комментарии larf311, фактический ответ в этом экземпляре был:
удаляют"
.settings/org.eclipse.wst.common.component
" файл.
Простой. ;)
Удаление файла .markers решило эту проблему для меня. Я бы поддержал это решение, за исключением того, что у меня нет «репутации» для этого. : (
Удалить проект и извлечь его из системы контроля версий
Вот еще кое-что, что вы можете попробовать, только это сработало для меня :(
Перейдите в свойства проекта> Аспекты проекта> там отметьте «Java» и «Utility Module» ... примените Это работает, если на ваш проект ссылаются другие проекты ... в противном случае вы можете поиграть с этими параметрами ... посмотреть, какой из них вам подходит.
Я использую SVN, и каждый раз, когда я проверяю проект на новом компьютере, у меня возникает эта проблема, способ, которым я исправил, - скопировать .settings из исходного местоположения в новую папку проекта. , конечно, используйте проверку
Используйте maven ... mvn eclipse: clean ... mvn eclipse: eclipse ... повторно импортируйте проект
Это просто означает, что конфигурация проекта wtp устарела или существует конфликт между модулями. перейдите в Projct -> properties -> project facets. Затем щелкните следующее: динамический веб-проект версии 2.5, java 5 или 6 и набор инструментов javascript (не уверен, что это необходимо). Вы заметите, что в файл .settings были внесены изменения. отметьте новые изменения, и каждый раз, когда кто-то проверяет проект, все должно быть в порядке