Je ne comprends peut-être pas complètement le wiki article sur la portée, alors pardonnez-moi si cela semble stupide.
Utilisation de OpenWrap avec Scope
Intro:
J'ai une solution (ABC.sln) avec plus de 40 projets et essaie de mettre en œuvre OpenWrap de gestion des paquets. Je l'ai fait ce qui suit dans le dossier racine de la solution:
o init-wrap -all
Cela a bien fonctionné: J'ai maintenant un fichier appelé SLN.wrapdesc dans le dossier racine de la solution. Tous les fichiers .csproj dans les sous-dossiers contiennent la ligne de cibles OpenWrap.
Je puis proceded d'ajouter les différents enveloppements à la solution:
o add-wrap -Name xxx
Encore une fois, cela a bien fonctionné: J'ai des enveloppes dans le dossier enveloppements, et la construction ne rompt pas après avoir enlevé les anciennes références de les projets.
Problème:
Tous les contenus des enveloppes vont tous les projets, même pour ceux qui ne ont pas besoin. Je voudrais pouvoir spécifier quels wraps vont où, par exemple AjaxControlToolkit ne va que dans des projets web.
Ce que j'ai essayé
D'abord, je l'ai enlevé la AjaxControlToolkit du wrapdesc:
o remove-wrap AjaxControlToolkit
Cela provoque l'accumulation de briser (comme prévu). Alors j'ai essayé les éléments suivants: 1.
Essayez d'ajouter l'enveloppe de retour avec une portée:
o add-wrap -Name AjaxControlToolkit -scope webproject
Cela met simplement l'enveloppe de retour dans le dossier enveloppements. J'ai alors ajouté <OpenWrap-Scope>customscope</OpenWrap-Scope>
au fichier de projet, mais la construction a encore cassé.
2. Essayez d'ajouter manuellement un fichier appelé ABC.webproject.wrapdesc au dossier racine. Cela provoque l'erreur suivante lorsque je tente d'ouvrir la solution:
The "exists" function only accepts a scalar value, but its argument "@(_WrapFile->'%(FullPath)')" evaluates to "D:\Projects\ABC.webproject.wrapdesc;D:\Projects\ABC.wrapdesc" which is not a scalar value.
Je suppose que ce n'aime pas 2 fichiers wrapdesc. C'est étrange parce que le wiki dit "... vous pouvez ajouter un second descripteur à côté de votre descripteur par défaut ..."
Alors maintenant je suis coincé. Quelqu'un a des idées?
o add-wrap -Name AjaxControlToolkit -scope webproject n'ajoute que le retour au dossier wraps, il ne crée pas le fichier .wrapdesc supplémentaire. Aussi, je ne veux pas changer ma disposition de source pour tous être dans un dossier src. Cela pourrait-il être ce qui ne va pas avec ça? – CarllDev
Donc d'abord cela ne devrait pas arriver, quelle version d'OpenWrap utilisez-vous? J'ai juste essayé et cela a fonctionné comme prévu. En ce qui concerne la mise en page, non, ce n'est pas grave du tout, le système est content de mettre du code où vous voulez – SerialSeb