2012-08-29 10 views
21

Tengo un proyecto en pleno funcionamiento (digamos que se llama "mygame") en el disco que contiene múltiples actividades. La actividad que se llama primero se llama "iniciador". Deseo que el proyecto se llame "com.mycompany.mygame", pero cuando realizo un proyecto de importación en eclipse y selecciono el directorio raíz de mi proyecto, aparece un cuadro de diálogo que indica que el proyecto que se encuentra en este directorio es "com .mycompany.mygame.launcher "sin forma de cambiarlo. Mi pregunta es, ¿qué está usando eclipse para determinar que mi proyecto tiene el nombre "com.mycompany.mygame.launcher"? ¿Es algo en el manifiesto?¿Cómo sabe eclipse el nombre de su proyecto?

+1

La función de importación se ha renovado desde una actualización reciente de ADT (r20 si no recuerdo) y no le permite editar el nombre del proyecto en la fase de importación del proyecto. Si conserva .classpath y .project con su fuente, puede usar 'Archivo - Importar ... - General - Proyectos existentes en el espacio de trabajo' importar su proyecto que recogerá de .project como nombre de proyecto predeterminado. la estafa es este Eclipse generado .classpath y .project pueden no funcionar cuando se cruzan diferentes versiones de SO o Eclipse. – yorkw

+0

¿Este nombre de paquete está en su AndroidManifest.xml? – Hartok

+0

Justo cerca de la parte superior dice: package = "com.mycompany.mygame" – Mick

Respuesta

14

Creo que el eclipse toma el nombre de clase que extiende Actividad. Porque cuando extiendes cualquier otro paquete como el Fragmento, etc., no creará el Iniciador por defecto para esa clase en particular. Por lo tanto, cada vez que se importe el nombre de la Clase con punto de manifestación al iniciador O se adjuntará el nombre de la clase. con el nombre del paquete

8

¿Quisiste decir que el nombre del proyecto cambió? Si es así, puede consultar el archivo .project que se encuentra en la carpeta raíz de su proyecto.

+0

El archivo ".project" contiene una línea mygame y ciertamente no contiene el texto com.mycompany.mygame.launcher, así que todavía no tengo ninguno el más sabio :-( – Mick

+0

¿Puedo entenderlo así: el nombre de su proyecto es 'mygame', y el paquete predeterminado es' com.mycompany.mygame'. Pero cuando importa este proyecto para eclipsar, el paquete predeterminado cambió a 'com.mycompany .mygame.launcher'? Si es así, ¿hay una carpeta cuya ruta de acceso como '% PROJECT_ROOT%/src/com/mycompany/mygame/launcher' o'% PROJECT_ROOT%/launcher'? – wodong

+0

Ther no es un directorio de "iniciador". Los archivos ".java" están todos en% PROJECT_ROOT%/src/com/mycompany/mygame/ – Mick

4

en eclipse, haga clic derecho en su proyecto Android Herramientas -> Cambiar el nombre del paquete de aplicaciones, cambiar el nombre a com.mycompany.mygame

+0

Eso puede ser válido, pero realmente no responde mi pregunta. – Mick

+1

¿Por qué no responde a su pregunta ?, indique más detalles –

+1

En realidad, tengo varios paquetes que paso de una PC a otra, no quiero tener que volver a cambiar el nombre una y otra vez si puedo solucionarlo una vez para todos ... También he tenido tanto aggro con el eclipse de una forma u otra, que mientras más pueda averiguar sobre cómo funciona, mejor me las arreglaré cuando las cosas vayan mal en el futuro. También solo tengo curiosidad. – Mick

3

En el archivo de manifiesto el atributo de nombre en la etiqueta manifiesta mostrará el paquete de la name.also La vista del explorador de paquetes en eclipse mostrará el nombre del paquete. Por ejemplo, si su nombre de paquete es com.cmpny.game, su carpeta src contendrá src> com> cmpny> juego> foldersa y dentro de ella se guardará su código.

2

Creo que es debido a la estructura del directorio seguido para todas las aplicaciones del mismo tipo, ya que toda la aplicación contiene algunos archivos/carpetas en la carpeta raíz que es el nombre de nuestra aplicación, por ejemplo, el proyecto Android contiene archivos como .project y .classpath y carpetas como .myeclipse src bin .settings etc

3

En cada proyecto hay un fichero llamado .project que es responsable del nombre del proyecto

<?xml version="1.0" encoding="UTF-8"?> 
<projectDescription> 
    <name>PROJECTNAME</name> 
    <comment></comment> 
    <projects> 
    </projects> 
    <buildSpec> 
    ........ 
    </buildSpec> 
    <natures> 
    ....../natures> 
</projectDescription> 
1

En el projec ¡hay un archivo .project creado por eclipse! cuando importamos el proyecto, busca este archivo y recopila la información relacionada con el proyecto de este archivo. Asi es como se hace. ¡Si elimina este archivo solo con el propósito de verificar eclipse, ya no reconocerá ese directorio como un proyecto!

4

¿Por qué está usando eclipse 'importar proyecto existente al área de trabajo'?

Debe usar la función 'Nuevo proyecto de Android -> Crear proyecto desde una fuente existente'. (No sé cómo estas opciones aparecen exactamente en su eclipse, por lo que tendrá que encontrarlas) De esta forma puede cambiarle el nombre a cualquier cosa.

Su segunda opción podría ser: Importar proyecto existente al espacio de trabajo (como ya lo está haciendo). Deje el nombre del proyecto tal como está, luego después de completar el proceso de importación, puede cambiar el nombre del proyecto a lo que desee.

6

Similar a su problema, cuando intento Import ->Android ->Existing Android code en el espacio de trabajo, la nomenclatura está desactivada.

Para aquellos que comentaron y estaban confundidos acerca de la pregunta, lo que sucede es que Eclipse importa el proyecto como el nombre de la primera actividad (incluido el espacio de nombres).

Importa el proyecto como com.company.app_name.first_activity_in_the_manifest

He estado teniendo este problema por un tiempo. Encontré la solución para mi proyecto. Porque es un repositorio git, tengo que hacer Import ->Git ->Projects from Git ->local.

Luego se importa correctamente, y no tiene el efecto secundario de algunas soluciones mencionadas aquí, la importación de código existente en un nuevo proyecto (que probablemente eliminaría mi enlace al repositorio git).

3

El nombre que ADT muestra en el Explorador de paquetes puede no ser el nombre en el archivo .project. Para cambiar esto, haga clic derecho en el nombre -> Refactorizar -> Renombrar. Cambie el nombre con "Actualizar referencias" marcada. Asegúrese de que el nombre que desea sea exclusivo para su listado de Package Explorer.

Cuestiones relacionadas