Dopo aver letto tutto ciò che ho trovato sul nuovo elemento contentFiles
di NuGet 3.3+, non riesco ancora a farlo funzionare nel mio pacchetto. Ho un pacchetto destinato sia a net46
sia a uap10.0
e la selezione delle DLL corrette per il tipo di progetto e la piattaforma funzionano come previsto. Ma vorrei anche aggiungere due file al progetto sull'installazione del pacchetto, un file CSV per tutti i progetti e piattaforme e un file di codice per C# o VB.Net (con buildAction="Compile"
). Ecco la versione ridotta del mio ultimo file .nuspec:NuGet 3.3+: contentFiles non aggiunto al progetto
<?xml version="1.0" encoding="utf-8" ?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata minClientVersion="3.3.0">
...
<contentFiles>
<files include="any\any\ErrorCodes.csv" buildAction="None" copyToOutput="false" />
<files include="cs\any\Errors.cs.pp" buildAction="Compile" />
<files include="vb\any\Errors.vb" buildAction="Compile" />
</contentFiles>
</metadata>
<files>
<file src="contentFiles\any\any\ErrorCodes.csv" target="contentFiles\any\any\" />
<file src="contentFiles\cs\any\Errors.cs.pp" target="contentFiles\cs\any\" />
<file src="contentFiles\vb\any\Errors.vb" target="contentFiles\vb\any\" />
...
</files>
</package>
Il pacchetto è stato creato senza errori, e lo fa contenere i tre file nella cartella contentFiles con la struttura di directory specificata.
Ma quando installo il pacchetto, l'ho provato con un'app universale (C# e VB) e un'app console .NET 4.6 che ho modificato per utilizzare un file project.json
: viene aggiunto il riferimento alla DLL, ma i file di contenuto non vengono aggiunti alla struttura del progetto né copiati nella directory del progetto.
Sono grato per qualsiasi input!
non mi piace questo nuovo meccanismo - aggiunge molto più stress al processo - difficile vedere cosa sta succedendo – tofutim
sono confuso, sto cercando di seguire il tuo file nuspec, e mentre io vedo contentFiles nella directory dei pacchetti, nulla va alla cartella obj. Mi sto perdendo qualcosa? – tofutim
Hai provato a compilare il progetto? Penso che i file vengano copiati nella cartella obj durante la compilazione. –