Eto: Compatibilidad con Visual Studio 2017 / Visual Studio para Mac / MonoDevelop 7

Creado en 30 mar. 2017  ·  15Comentarios  ·  Fuente: picoe/Eto

¿Existe un cronograma para agregar este soporte? ¿O algún consejo sobre cómo podría ayudar a lograrlo?

Comentario más útil

Construido con VS 2017 15.3 en Windows. No se realizaron cambios en el código. Solo una corrección de referencia de nuget, ensamblaje y marco de destino a .Net 4.6

Finalmente todo funcionó como se esperaba.

http://www.mediafire.com/file/5b84lz8sz053yut/Eto.Addin.VisualStudio.vsix

Todos 15 comentarios

No hay una línea de tiempo definitiva, pero quiero hacer esto para la versión 2.4. Por lo general, no me molesto en publicar cosas para productos sin terminar (VS para Mac / MD 7), pero podría ser fácil admitirlo ya que no parece haber muchas rupturas de API entre 6 y 7.

Si desea ayudar, realmente puedo usarlo. Toda la fuente está aquí . Deben cargarse en las versiones más nuevas de VS y XS con los complementos de creación de extensión / complemento apropiados instalados y probados.

Hay algunos otros elementos destacados con respecto a los complementos que también deben examinarse:

  • # 582: admite MonoMac condicionalmente, o posiblemente elimínelo por completo, ya que Xamarin.Mac ahora es de código abierto.
  • # 701: admite condicionalmente Xamarin.Mac, por lo que solo carga las cosas adecuadas cuando está instalado.
  • # 601 - agregue plantillas para formularios y cuadros de diálogo basados ​​en xaml a XS.
  • # 579 - Se corrigió el bloqueo con la ventana de vista previa de VS, que tiene que ver con cómo está configurado el dominio de la aplicación. Tengo una sucursal local con un intento de solucionarlo, pero todavía tengo que averiguar por qué no mata el dominio de la aplicación correctamente al volver a cargar la vista previa.

¡Salud!
Curtis.

Lo hice funcionar con Visual Studio para Mac.

Creé un nuevo directorio en la sección Complementos para Visual Studio Mac, se basa en la versión existente de xamarin Studio.

solicitud de extracción creada en https://github.com/picoe/Eto/pull/793

En realidad, no ejecuté la extensión, solo la compilé, por lo que es posible que necesite más trabajo

No pude hacer que el complemento funcionara con VS2017. Realmente no estoy en el desarrollo de extensiones VS y solo intenté que las referencias se resolvieran de alguna manera, pero falla con un archivo extraño que no se encuentra HRESULT al crear un nuevo proyecto Eto.
¿Algún apoyo oficial sobre esto?

Oye, creé un archivo .mpack que puedes usar si quieres.

https://github.com/anthonyirwin82/Eto/blob/develop/Visual-Studio-Mac-Extension-For-Eto.Forms-in%20mpack%20format/Eto.Addin.VisualStudioMac_2.3.0.6.mpack

En Visual Studio para Mac, haga clic en el menú de Visual Studio, luego haga clic en Extensiones, luego haga clic en el botón Instalar desde archivo y seleccione el archivo .mpack para instalar la extensión.

Esto solo funciona en VS en Mac, no para la versión de Windows, si eso es lo que intentaba hacer.

Gracias, pero lo necesitaba para la aplicación de escritorio clásica de Visual Studio 2017 en Windows.
En realidad, podría construir el .vsix para él ahora (usando ensamblados en mi directorio VSSDK en lugar de paquetes NuGet, realmente no entiendo cuál es la diferencia, pero eh), pero realmente no puede crear proyectos, ya que no puede encontrar el Eto.Forms paquetes NuGet de alguna manera (incluido el disponible 2.3.0 en lugar del paquete 2.4.0-alpha cuando se cambia a ese). Pero al menos las plantillas y el trabajo del diseñador, este último bastante lento pero suficientemente bueno.

Por favor, escriba una breve actualización, si pasa algo aquí.
Sería bueno :-)

Construido con VS 2017 15.3 en Windows. No se realizaron cambios en el código. Solo una corrección de referencia de nuget, ensamblaje y marco de destino a .Net 4.6

Finalmente todo funcionó como se esperaba.

http://www.mediafire.com/file/5b84lz8sz053yut/Eto.Addin.VisualStudio.vsix

Acabo de descargar e instalar la extensión en Visual Studio 2017 v 1.5.4.5 y no funciona.

La generación de una nueva aplicación Eto arroja un error:
~Eto.Forms.2.4.0-alpha: No se puede encontrar la versión 2.4.0-alpha del paquete Eto.Forms~

Alguna idea ?

¿Ha agregado eto myget a los repositorios de nuget?

VS para Mac y MonoDevelop ahora son compatibles con # 974. Se publicará una nueva versión del complemento junto con la versión 2.4, o puede compilarlo manualmente.

Estoy tratando de usar el nuevo complemento con VS para Mac pero estoy un poco confundido:
Puedo compilar Eto dll (s) desde Visual Studio para Mac Eto \ src \ Eto.sln, y funciona (se actualizó la rama de desarrollo para confirmar ed2073c (1 de febrero de 2018, 20:19)
Puedo compilar el complemento desde Etobuildbuild-addin.sh, se crea un Eto.Addin.XamarinStudio_2.3.0.6.mpack pero la compilación general falla.
Solo se crea Eto.Forms.Templates.2.4.0-alpha.nupkg en Eto \ artifacts \ nuget \ Release.
Sin embargo, el complemento recién creado se instala con éxito y puedo crear un nuevo proyecto Eto, pero cuando lo construyo, nuget se queja con el mensaje "Falló la restauración para 'Eto.Platform.Mac64 (> = 2.4.0-alpha)'".
¿Debería esperar tenerlo en Eto \ artifacts \ nuget \ Release?
Si en lugar de usar nuget agrego directamente a mi solución Eto \ src \ Eto.csproj y Eto \ src \ Eto.Mac \ Eto.Mac.csproj (o Eto \ src \ Eto.Mac \ Eto.Mac64.csproj) y referencia donde sea necesario, puedo compilar bien, pero cuando ejecuto mi aplicación se bloquea con la excepción "El tipo de plataforma Eto.MacPlatform, Eto.Mac64 se cargó pero no es válido en el contexto actual. Por ejemplo, las plataformas Mac requieren estar en un paquete .app correr."
¿Qué estoy haciendo mal?
Gracias

Hola @ msasso69 , para compilar los paquetes nuget necesitas usar ./build.sh (en mac) y build.cmd (en Windows). Por lo general, hago esto a través de un recurso compartido en una máquina virtual de Windows, por lo que ambos se ejecutan en la misma copia de los archivos de origen. Esto asegura que se creen los archivos XamMac y Wpf nupkg, que son obligatorios para las plantillas de complementos.

Necesita los paquetes nuget para ejecutar la plataforma Mac / Mac64, ya que configura la compilación adecuada del paquete .app y le dice a VS en Mac que ejecute el paquete .app en lugar del .exe directamente. Todo esto está en build / MacTemplate.

Gracias Curtis,
ejecutando ./build.sh Ahora puedo compilar con éxito todos los paquetes nuget y el proyecto inicial de Eto creado por el complemento funciona bien :)
Sin embargo, todavía no puedo depurar el código Eto, si hago referencia a los proyectos Eto en lugar de usar los paquetes nuget, todavía obtengo la excepción: "El tipo de plataforma Eto.MacPlatform, Eto.Mac64 se cargó pero no es válido en el actual contexto. Por ejemplo, las plataformas Mac requieren estar en un paquete .app para ejecutarse. ".
La única diferencia que encontré de la aplicación de prueba Eto (que consideré relevante) es:

<UseMacTemplate>True</UseMacTemplate>

pero incluso agregarlo nada cambia :(
Creo que no entendí lo que quisiste decir cuando me dijiste que todo está en build / MacTemplate. ¿Como lo uso?
Gracias por su paciencia ;)

@ msasso69 , si desea usar Eto.Mac.csproj o Eto.Mac64.csproj directamente sin usar sus paquetes nuget, tendrá que agregar <import Project="path/to/MacTemplate.targets" /> a su csproj. Esto es lo que hace <UseMacTemplate>True</UseMacTemplate> para los proyectos de prueba de Eto a través del archivo Directory.Build.targets . Al usar los paquetes nuget, este archivo se importa automáticamente a su proyecto.

Otras opciones incluyen:
1) Utilice los paquetes nuget de MyGet
2) Construya los paquetes nuget y utilícelos
3) Cree un proyecto "XamMac Classic" (difícil ya que no está disponible en VS para Mac, de ahí la nueva forma en que se hace)
4) Utilice el proyecto XamMac2

¡Espero que esto ayude!
Curtis.

Corregido con # 986

¿Fue útil esta página
0 / 5 - 0 calificaciones