2016-05-25 40 views
6

Ho seguito i passaggi esatti delle liste Microsoft in più progetti all'interno delle esercitazioni Microsoft Holographic - Academy. Li ho completati tutti e tutti hanno funzionato bene dalla creazione all'esportazione e al test. Questo sta usando Unity3D/C# che viene compilato in un file di soluzione di Visual Studio (sln).Le app Hololens non si sviluppano più a lungo - Cites File Metadata mancante e c-Sharp.firstpass non trovato

Dopo aver completato questi, ho continuato a costruire la mia app, che ha anche funzionato bene. Nessun problema!

Ora, quando provo a compilare, si verifica uno strano errore che non è possibile trovare il file c-Sharp.firstpass (la dll esportata/cross-compilata da quello che ho capito).

Ora anche i progetti che sono stati costruiti con successo non verranno più creati.

Incollerò l'errore esatto qui sotto.

Le cose che ho provato:

  • Creazione di un nuovo progetto e incollare tutte le attività precedenti in esso - quindi la ricostruzione.
  • Pulizia progetto VS
  • Riavviando il computer
  • Riavvio Unity3D
  • disinstallazione e reinstallazione di Visual Studio (versione consigliata)
  • disinstallazione e reinstallazione Unity3D (versione consigliata)
  • Seguendo il tutorial step-by -step di nuovo
  • Ricerca StackOverflow e tentativo di ogni soluzione la cui domanda assomigliasse a distanza al mio problema
  • Chiedendo su Answers Unity (2 giorni fa)
  • Costruire il file di progetto alle diverse unità, cartelle, località, ecc
  • non rinunciare

Sembra che ci sia un problema di riferimento - così ho avere anche un riferimento/non referenziato il file menzionato.

Grazie per qualsiasi aiuto. Per essere chiari, questa è un'applicazione per Windows 10 Universal in fase di sviluppo per Microsoft Hololens. Tuttavia, il dispositivo stesso sembra avere poco o nulla a che fare con il processo di compilazione in questo caso, oltre al targeting.

migliore,

Addyarb

L'errore:

The command ""D:\Development\Hololens Builds\PlanetApp\Unity\Tools\SerializationWeaver\SerializationWeaver.exe" "D:\Development\Hololens Projects\Planetarium\UWP\Assembly-CSharp-firstpass\bin\x86\Release\Unprocessed\Assembly-CSharp-firstpass.dll" -pdb -verbose -unity-engine="D:\Development\Hololens Builds\PlanetApp\Planetarium\Unprocessed\UnityEngine.dll" -unity-networking=D:\Development\Hololens Builds\PlanetApp\Planetarium\Unprocessed\UnityEngine.Networking.dll "D:\Development\Hololens Projects\Planetarium\UWP\Assembly-CSharp-firstpass\obj\x86\Release\x86\Release"" exited with code 1. Assembly-CSharp-firstpass D:\Development\Hololens Projects\Planetarium\UWP\Assembly-CSharp-firstpass\Assembly-CSharp-firstpass.csproj 180

Metadata file 'D:\Development\Hololens Projects\Planetarium\UWP\Assembly-CSharp-firstpass\bin\x86\Release\Assembly-CSharp-firstpass.dll' could not be found Assembly-CSharp D:\Development\Hololens Projects\Planetarium\UWP\Assembly-CSharp\CSC

Metadata file 'D:\Development\Hololens Projects\Planetarium\UWP\Assembly-CSharp\bin\x86\Release\Assembly-CSharp.dll' could not be found Planetarium D:\Development\Hololens Builds\PlanetApp\Planetarium\CSC

+0

Hololens è accademicamente ben debugato. Usa il loro [forum dedicato] (http://forums.hololens.com/) per parlare con gli sviluppatori Microsoft. –

+0

Grazie Hans, ho postato la mia domanda anche lì. –

+0

controlla questo post sui forum Unity: https://forum.unity3d.com/threads/net-scripting-backend-and-visual-studio-2017-3-incompatibility.487833/ – hamalaiv

risposta

3

--update ---

La mia risposta precedente si applica ancora quindi non rimuoverlo. Ma per risolvere questo problema specifico, assicurati di posizionare l'app generata in una struttura di cartelle che lo non contenga spazi. Sembra che ci sia un errore in SerializatioWeaver.exe che non legge correttamente il percorso e non sarà in grado di trovare le estensioni Unity necessarie.


Assicurarsi di utilizzare la versione di Unity3D corretta creata per HoloLens. Utilizzare sempre l'ultima versione compatibile come annunciato sul forum HoloLens Academy - al momento della stesura di questo, che la versione è 5.4 Beta 18 e si può scaricare here

sempre scaricare l'installer dal link fornito sul forum HoloLens come le normali build di Unity sono diverse. È necessaria la speciale versione di Unity3D creata per HoloLens

Quando si installa una nuova versione, installare sempre in una nuova posizione rispetto a quella precedente. Dopo aver installato Unity, installa sempre il Runtime UWP che puoi trovare sulla stessa pagina che ho linkato sopra (il runtime UWP è stato creato appositamente per ogni versione, quindi esegui sempre il download e l'installazione dopo Unity). Quando si installa UWP Runtime, assicurarsi di selezionare la posizione corretta per la cartella di installazione di Unity 3D (la cartella in cui è stata appena installata l'unità).

Se tutto è installato correttamente, le build dovrebbero iniziare a funzionare di nuovo.

+0

Grazie Alex. Sono stato in grado di riprodurre questo errore oggi e ho trovato la soluzione (basata sul tuo). Stavo cercando di aggiornare il mio nome di icone/app e ho finito per mettere uno spazio nel mio titolo. Quando sono andato a costruire - mi è stato dato un errore simile come accennato prima. Tuttavia, quando ho ricostruito la soluzione da Unity e riprovato senza spazio nel nome, ho ricevuto lo stesso errore. La mia soluzione era di rigenerare il certificato andando su File> Impostazioni build> Impostazioni lettore> Impostazioni di pubblicazione> Crea e quindi creando un nuovo certificato. –

+0

Per aggiungere a questo, se si "rinomina" (cioè aggiungi uno spazio) il nome del progetto/app, Unity/VS genererà un'altra sln - ma nella stessa cartella. Non sono sicuro che ciò influisca sull'esportazione/costruzione, ma avrebbe senso gettare una breccia nelle cose. –

0

Ho avuto lo stesso problema oggi e l'ho risolto spostando l'intero progetto in una cartella con un percorso più breve. Questo potrebbe non essere il tuo problema, ma ha funzionato per me per qualche motivo. Dovrai anche trovare tutti i percorsi assoluti nel file .sln e cambiarli in modo che corrispondano al nuovo percorso più breve in modo che i tuoi progetti vengano caricati. C'è anche un percorso che dovrai modificare nella cartella .userprefs se ricordo male.

Buona fortuna! Spero che questo funzioni per te, anche se non capisco nemmeno perché abbia funzionato per me.

1

Dopo circa 3 giorni senza risultati, ho ripristinato i valori hololens e il computer con cui lavoro. Dopo aver reinstallato tutto il software pertinente, le mie build hanno funzionato bene. Ho salvato le stesse unità/cartelle e tutto.

Se segui questo approccio, ricorda di eseguire il backup del tuo lavoro!

Questo sicuramente non è il modo "migliore" per gestire questo problema, dal momento che non posso ripristinare le impostazioni di fabbrica per ogni bug. Ma non ero più vicino a risolvere questo problema e, beh, il tempo è denaro.

Goodluck e grazie per le risposte!

+0

Mi chiedo perché hai accettato una risposta se non ha funzionato per te? Sto cercando di trovare una soluzione a questo problema e non vorrei davvero ripristinare le impostazioni di fabbrica del mio computer. – hamalaiv

0

Volevo solo mettere questo fuori là perché ho passato tutte le altre risposte e ancora non riuscivo a farlo funzionare. Dopo aver giocato con questo per 2 giorni ho deciso di graffiare tutti gli esempi che ho scaricato per i progetti Unity/HoloLens e ricominciare da capo. Ho letto da qualche parte che l'ultima versione dell'unità funziona con HoloLens, qualcun altro ha sottolineato che i progetti di Unity 5.4 e 5.6 non funzionerebbero dopo l'apertura in una nuova versione. Qualcuno ha suggerito che i file dei metadati devono essere cambiati da allora. Ho scaricato l'ultima versione di unità che è attualmente 2017.2.0b7, e afterwords in "Download aggiuntivi" sono andato a Windows Component Installers e scaricato Windows Store (.NET) Target Support. Come accennato @AlexDrenea, questo è un passo importante. Afterwords mi assicurai che Visual Studio 2017 fosse installato, aggiornato e che tutte le funzionalità aggiuntive fossero installate. Ho dovuto eseguire nuovamente il programma di installazione e verificare che fosse selezionato "Sviluppo piattaforma Windows universale" e "Sviluppo giochi con Unity".

Per quanto riguarda il progetto, ho iniziato da zero e ho modificato le impostazioni di build nello stesso modo in cui ho trovato nei tutorial online, con una differenza. Non ho controllato l'impostazione "Progetti Unity C#". Dopo alcune ricerche ho scoperto che questo non ha bisogno di essere impostato. Dopo che sono stato in grado di creare l'emulatore e il dispositivo senza errori

tldr; Non utilizzare vecchi esempi o progetti quando si lavora con Unity e HoloLens, utilizzare sempre l'ultima versione di Unity compatibile con HoloLens e l'ultima versione di VisualStudio e avviare i progetti da zero. A meno che non siano per la tua versione.

0

Mi sembra che il problema riscontrato sia un'incompatibilità tra Unity3D e Visual Studio 2017 (15.3). Per vedere i riferimenti per questo problema, seguire il collegamento seguente. Hololens Build Failing - The command AssemblyConverter.exe exited with code 1

Solutions: