Maven + RoboGuice + ActionBarSherlock + RoboGuice-Sherlock

Estoy tratando de crear un proyecto de base de Android utilizando el arquetipo android-quickstart, y la adición de RoboGuice, dependencias de ActionBarSherlock, además de RoboGuice-Sherlock para combinar los dos.

Este es mi pom.xml:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.myapp</groupId> <artifactId>BaseApp</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>apk</packaging> <name>BaseApp</name> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <platform.version> 4.1.1.4 </platform.version> <android.plugin.version>3.6.0</android.plugin.version> </properties> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>${platform.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.roboguice</groupId> <artifactId>roboguice</artifactId> <version>2.0</version> </dependency> <dependency> <groupId>com.google.code.findbugs</groupId> <artifactId>jsr305</artifactId> <version>1.3.9</version> </dependency> <dependency> <groupId>com.actionbarsherlock</groupId> <artifactId>actionbarsherlock</artifactId> <version>4.4.0</version> <type>apklib</type> </dependency> <dependency> <groupId>com.github.rtyley</groupId> <artifactId>roboguice-sherlock</artifactId> <version>1.5</version> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>${android.plugin.version}</version> <extensions>true</extensions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <configuration> <sdk> <platform>16</platform> </sdk> </configuration> </plugin> </plugins> </build> </project> 

Pero m2eclipse no funcionará con este Pom.xml, ya que es incapaz de encontrar la dependencia apklib. Speficically Estoy recibiendo el siguiente mensaje en la pestaña "Problemas" en Eclipse:

 dependency=[com.actionbarsherlock:actionbarsherlock:apklib:4.4.0:compile] not found in workspace pom.xml /BaseApp line 1 me.gladwell.eclipse.m2e.android.markers.dependency.apklib 

He intentado quitar la línea <type>apklib</type> , pero mis recursos de ABS (es decir, los temas requeridos) no se importan al proyecto.

He leído en varias preguntas que el tipo de apklib sólo funciona en línea de comandos, y que si quiero mantener el IDE necesito importar ABS manualmente como una biblioteca. Lo hice, pero RoboGuice se bloquea porque el proyecto se convierte en un proyecto de biblioteca y, aparentemente, los ID de recursos no son definitivos en proyectos de biblioteca. (El error de tiempo de compilación que obtengo es "El valor del atributo de anotación InjectView.value debe ser una expresión constante"). Para referencia, ésta es mi única actividad:

 public class HelloAndroidActivity extends RoboSherlockActivity { @InjectView(R.id.helloworld) TextView textView; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView.setText("Roboguice says Hello World"); } } 

¿Hay alguna forma adecuada de crear un proyecto base con estos tres elementos usando maven y Eclipse?

One Solution collect form web for “Maven + RoboGuice + ActionBarSherlock + RoboGuice-Sherlock”

Resulta que accidentalmente hice clic en la casilla "Is Library" en Propiedades del proyecto. Ahora funciona con ABS importado manualmente como una biblioteca.

Es una lástima que no sea capaz de usar Maven directamente 🙁

  • Robolectric + PowerMock + Mockito no funciona
  • Proceso se bloquea durante la creación del inyector de RoboGuice, si hay una instancia burlada en cualquier módulo
  • Uso de Guice para inyectar dependencias en el constructor de una actividad de Android
  • Problema con ProGuard y RoboGuice con anotaciones de @Inject
  • Inyectar objetos de objetos en Class Util (usando Dagger)
  • OnViewCreated con la biblioteca de compatibilidad
  • Roboguice: el uso de las inyecciones manuales causa ConfigurationException (no se ha vinculado la implementación)
  • ORMLite para Android: enlazar DAO con Roboguice
  • Aplicación para Android con RoboGuice 2.0 - Cómo inyectar un singleton con el contexto de la aplicación
  • Android Roboguice proguard warning
  • ¿Qué hace a Guice incapaz de funcionar en Android excepto como Guice-no-aop?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.