MSBUILD: błąd msb1008: można podać tylko jeden projekt
Dlaczego otrzymuję następujący błąd kompilacji?
C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe C:\Code\EduBenesysNET\EduBenesysNET\EduBenesysNET.vbproj /t:publish /p:Configuration=Release /p:Platform=AnyCPU /v:detailed /p:PublishDir="\\BSIIS3\c$\DATA\WEBSITES\benesys.net\benesys.net\TotalEducationTest\" /p:InstallUrl="https://www.benesys.net/benesys.net/TotalEducationTest/" /p:ApplicationVersion=1.0.1.198 /p:ProductName="Total Education TEST" /p:PublisherName="BeneSys, Inc." /p:UpdateRequired="True" /p:MinimumRequiredVersion=1.0.1.198 Microsoft (R) Build Engine Version 3.5.30729.1 [Microsoft .NET Framework, Version 2.0.50727.3603] Copyright (C) Microsoft Corporation 2007. All rights reserved. MSBUILD : error MSB1008: Only one project can be specified. Switch: Education For switch syntax, type "MSBuild /help"
Nie widzę, jak drugi projekt jest określony.
Czy jest on gdzieś przechowywany w pliku projektu?
13 answers
Okazuje się, że końcowy ukośnik we właściwości PublishDir wymyka się cytatowi końcowemu. Ucieczka z trailing slash rozwiązała mój problem.
/p:PublishDir="\\BSIIS3\c$\DATA\WEBSITES\benesys.net\benesys.net\TotalEducationTest\\"
W ten sposób możemy używać cudzysłowów dla ścieżek, które mają białe znaki we właściwościach, które MSBuild wymaga ukośnika końcowego.
Wiem, że to stary post, ale czuję, że muszę się tym z kimś podzielić: -)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-14 05:32:34
Rozwiązanie
Usuwanie cudzysłowów wokół ustawienia / p:PublishDir
Tzn.
Zamiast cudzysłowów
/p:PublishDir="\\BSIIS3\c$\DATA\WEBSITES\benesys.net\benesys.net\TotalEducationTest\"
Nie używaj cudzysłowów
/p:PublishDir=\\BSIIS3\c$\DATA\WEBSITES\benesys.net\benesys.net\TotalEducationTest\
Przepraszam, że nie opublikowałem wcześniej mojego znaleziska. Właściwie musiałem ponownie zbadać, aby zobaczyć, co trzeba zmienić. Kto by pomyślał, że usunięcie cytatów zadziała? Odkryłem to podczas oglądania współpracowników budujących inne rozwiązanie i zauważyłem, że nie ma cytatów.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-12-08 13:39:17
Ten problem pojawia się, gdy masz ścieżkę lub właściwość zawierającą spację, która nie jest cytowana.
Wszystkie Twoje właściwości i ścieżka mają cytat wokół nich, to dziwne. Komunikat o błędzie wskazuje Education
jako przełącznik, spróbuj usunąć /p:ProductName="Total Education TEST"
, aby sprawdzić, czy działa.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-23 16:01:14
Musisz umieścić qouty wokół ścieżki i nazwy pliku.
Więc użyj
MSBuild "C:\Path Nazwa\Nazwa Pliku.Exe " / [Opcje]
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-01-29 07:02:43
Spróbuj usunąć końcowy ukośnik lub ukośnik na końcu ścieżki publikacji i zainstaluj adres url
/p:PublishDir="\\BSIIS3\c$\DATA\WEBSITES\benesys.net\benesys.net\TotalEducationTest"
/p:InstallUrl="https://www.benesys.net/benesys.net/TotalEducationTest"
Musisz trafić specjalną sekwencję znaków z \ " i (lub)/", Ale Nie wiem wystarczająco w cmd.exe do rozgryzienia.
Osobiście zawsze używam Powershell : jest o wiele bardziej przyjazny i potężny!
Mam nadzieję, że to pomoże!Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-01-29 08:49:55
W vs2012 po prostu spróbuj utworzyć definicję kompilacji "Testuj kompilację" używając domyślnego szablonu TFS " DefaultTemplate....xaml " (Zwykle jego kopia)
To nie powiedzie się ze zwykłym tłumaczeniem-error: "MSBUILD: error MSB1008: można podać tylko jeden projekt.Switch: Activities "
Oczywiście gdzieś w domyślnym szablonie TFS brakuje niektórych "
, więc msbuild otrzyma jako parametr nieusuwalny katalog zawierający spacje, co spowoduje wielokrotne projekty(?!)
Więc nigdy nie używaj spacji w TFS buduj nazwy definicji, dość smutne i proste w tym samym czasie
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-28 11:03:50
W Git Bash musiałem określić parametry z podwójnymi ukośnikami w stylu:
MSBuild.exe "Path\to\Solution.sln" //p:Platform="x86" //p:Configuration=Release //p:AppxBundlePlatforms="x86"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-04 10:29:45
To działało dla mnie w argumencie TFS MSBuild. Zwróć uwagę na liczbę ukośników.
/ P: DefaultPackageOutputDir= "\ \ Rdevnet \ Visual Studio Projects \ Insurance\ "
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-24 16:22:47
Używałem pojedynczych cudzysłowów wokół parametru hasła, gdy dostałem błąd
/p:password='my secret'
bad
I zmieniono go na użycie podwójnych cudzysłowów w celu rozwiązania problemu.
/p:password="my secret"
Dobry
Prawdopodobnie to samo dotyczy każdego parametru wymagającego cudzysłowów dla wartości zawierających spację.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-17 17:20:21
Dla mnie zapomniałem dodać cytat końcowy
/p:DeployOnBuild=true;OutDir="$(build.artifactstagingdirectory)
Do
/p:DeployOnBuild=true;OutDir="$(build.artifactstagingdirectory)"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-05 20:14:18
Na wypadek, gdyby ktoś miał ten sam problem co ja, brakowało mi " / "przed jednym z argumentów "/ p". Niezbyt jasne z opisu. Mam nadzieję, że to komuś pomoże.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-21 19:04:27
Dla przyszłych czytelników.
Dostałem ten błąd, ponieważ mój podany plik dziennika miał w sobie spację:
Przed:
/l:FileLogger,Microsoft.Build.Engine;logfile=c:\Folder With Spaces\My_Log.log
Po: (które rozwiązało)
/l:FileLogger,Microsoft.Build.Engine;logfile="c:\Folder With Spaces\My_Log.log"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-21 13:31:19
Jeśli używasz domyślnej przestrzeni roboczej w Jenkins, może się to zdarzyć. Użyj niestandardowej lokalizacji obszaru roboczego bez spacji.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-26 16:17:29