1

У меня есть одна проблема с Eclipse.Eclipse и Android с Maven: невозможно создать экземпляр активности ComponentInfo с java.lang.ClassNotFoundException

Существует проект андроида, сконфигурированный с Maven. Вот pom.xml из проекта детского (все конфигурации версий была перенесена о родительском pom.xml):

<dependency> 
    <groupId>android.support</groupId> 
    <artifactId>compatibility-v4</artifactId> 
</dependency> 
<dependency> 
    <groupId>android.support</groupId> 
    <artifactId>compatibility-v7-appcompat</artifactId> 
     <type>apklib</type> 
</dependency> 
<dependency> 
    <groupId>android.support</groupId> 
    <artifactId>compatibility-v7-appcompat</artifactId> 
     <type>jar</type> 
</dependency> 

Также есть mavenised совместимости v7-AppCompat проект импортируется в рабочую область в качестве библиотеки. Этот проект был скопирован в рабочее пространство (потому что есть проблема с библиотеками в других местах) и импортирован в мой проект maven (Свойства -> Android -> Библиотеки).

У меня есть одно мероприятие.

public class HelloActivity extends ActionBarActivity 

Теперь я получил сообщение об ошибке при попытке отладки приложения:

01-02 13:36:22.753: E/AndroidRuntime(11867): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{somepackage.android/somepackage.android.hello.activities.HelloActivity}: 
java.lang.ClassNotFoundException: somepackage.android.hello.activities.HelloActivity in loader dalvik.system.PathClassLoader[/data/app/somepackage.android-2.apk] 

Я попробовал все, от других вопросов. Номер заказа & Экспорт в путь сборки в обоих проектах и ​​до сих пор ничего (Добавление библиотек с ресурсами Использование Eclipse здесь: http://developer.android.com/tools/support-library/setup.html)

Когда я изменить его

public class HelloActivity extends FragmentActivity 

Он работает должным образом, даже если я уеду AppCompat стиль в AndroidManifest:

<activity 
    android:name="somepackage.android.hello.activities.HelloActivity" 
    android:theme="@style/Theme.AppCompat.Light.DarkActionBar" 
    android:windowSoftInputMode="stateHidden|adjustResize" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 

более того, я получаю сообщение об ошибке, когда приложение загружается на устройство:

[2014-01-02 13:36:19 - compatibility-v7-appcompat] Could not find compatibility-v7-appcompat.apk! 

Даже думал, что в этом проекте установлен флажок «Есть библиотека» в свойствах android.

Это как проект выглядит следующим образом: project

Я был бы признателен за помощь :)

+0

Не могли бы вы предоставить мне более подробную информацию о решении этой проблемы. У меня такая же конфигурация, как у вас, но все равно получаю файлы с несколькими деками ... Вы использовали https://github.com/mosabua/maven-android-sdk-deployer? – thekadrik

+0

Да, да. Посмотрите на последний ответ здесь. Есть инструкции по устранению этой проблемы. Если это не работает для вас, напишите подробнее ... –

ответ

0

Проверьте, правильно ли выбран пакет под Java сборки path-> заказ/экспорт. Если его не выбрать, выберите. если библиотека не будет выбрана в этом списке, во время сборки не будет ошибок. при запуске конкретного пакета проекта не будет экспортироваться с этим проектом это приведет к ClassNotFoundException

+0

OK, прямо сейчас У меня возникла новая ошибка при построении: '[2014-01-02 14:03:11 - Dex Loader] Не удалось выполнить dex: несколько файлов dex определяют Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat $ AccessibilityServiceInfoVersionImpl; [2014-01-02 14:03:11 - es-base-app] Не удалось выполнить преобразование в формат Dalvik: невозможно выполнить dex: несколько файлов dex определяют Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat $ AccessibilityServiceInfoVersionImpl; ' Is проблема в том, что совместимость-v7-appcompat экспортирует v4, а мой проект имеет v4 в зависимости от maven? Как его решить? –

+0

Можете ли вы очистить папку с bin и попытаться построить еще раз. но я не уверен в этой проблеме, но я столкнулся с этой проблемой, создав приложение для распространения в магазине приложений. может быть ошибкой в ​​затмении. – CoolMonster

0

Благодаря CoolMonster я решил его делать так:

  • В mavenised совместимости v7-AppCompat проект
    • Проект -> Свойства -> Заказ и экспорт -> выберите только андроид-поддержка-v7-appcompat.jar
  • В мой проект
    • Проект -> Свойства -> Заказ и экспорт -> выберите зависимостями Maven, Android Частные библиотеки и Android зависимостями.
+0

Перейти к: ** Путь сборки Java -> Заказ и Экспорт ** выберите и ** введите в порядке ** в верхней части списка: Частные библиотеки Android, Зависимости от Android, Maven Dependencies. –

 Смежные вопросы

  • Нет связанных вопросов^_^