Не работает код в visual studio

Обновлено: 07.07.2024

Я хотел бы иметь возможность отлаживать приложение Angular2 с помощью кода Visual Studio.

Здесь моя среда:

    ОС: Ubuntu 16.10 x64 Браузер: Chromium 53.0.2785.143 Узел: 6.8.0 Angular-cli: 1.0.0-beta.19-3

Создание нового проекта с angular-cli:

Затем я открываю VSC и загружаю проект: File/open folder

Я нажимаю на логотип debug и configure launch.json , выбрав chrome . Создает следующий файл:

Затем я просто запускаю проект angular2, выполнив:

Как только это началось, в VSC я выбираю: "Запустить Chrome против localhost, с исходными картами".

Затем я получаю следующую ошибку:
"Не удается найти chrome: установите его или установите поле runtimeExecutable в конфигурации запуска".

Итак, я установил:
"runtimeExecutable": "хром-браузер"
(поскольку у меня нет хрома, но хром на моем Ubuntu).

Порт Angular-Cli по умолчанию для запуска приложения - 4200. Измените URL-адрес с: " http://localhost: 8080 " на " http://localhost: 4200 ".

Теперь браузер открывает приложение, но VSC имеет следующую ошибку: "Не удается подключиться к процессу выполнения, время ожидания превышает 10000 мс - (причина: не удается подключиться к цели: подключено ECONREFUSED 127.0.0.1:9222".

Я пытаюсь снова запустить отладку: та же ошибка, что и раньше (не удается подключиться).

Я также видел, что следующие аргументы могут помочь:

Но это ничего не меняет.

Я решил использовать VSC для моих разработчиков машинописного текста (в основном angular2), и этот способ отладки кажется очень мощным. У меня такое чувство, что было бы слишком плохо не использовать его :).

Спасибо за любую помощь!

РЕДАКТИРОВАТЬ 1: . Частичное улучшение . Я нашел способ получить отладочную информацию в консоли кода Visual Studio! Так что это еще не идеально, так как точки останова не работают, но вот в чем дело. До сих пор, если я открыл http://localhost: 9222, я не смог ничего увидеть. ("localhost не авторизовал соединение").

НО, если я запускаю хром вот так:

Важно отметить этот аргумент: --user-data-dir=remote-profile . Если вы просто передадите --user-data-dir, то откроется новое окно, в котором никто не подключен. Но этого недостаточно. Вам необходимо передать удаленный профиль в качестве значения.

enter image description here

    открывается новое окно браузера Я открываю http://localhost: 4200 И я также могу связаться с http://localhost: 9222 ! Я могу подключить VSC с опцией "Присоединить к Chrome с исходной карты"! (как вы видите, у меня действительно "Angular 2 работает в режиме разработки. Вызовите enableProdMode(), чтобы включить производственный режим.", Отображаемым в консоли, и нижний колонтитул теперь имеет оранжевый фон)

enter image description here

До сих пор, я надеюсь, что это может помочь некоторым людям. Но проблема в том, что точки останова не работают.

Команда «Код». не работает в этом руководстве ?

Все остальные шаги до этого работали. Как я могу вызвать код Visual Studio в терминале OSX?

введите описание изображения здесь

РЕДАКТИРОВАТЬ: я закончил открыть его из Visual Code Studio, изменив рабочее пространство, но мне интересно, почему эта команда «код». не сработает?

1. Убедитесь, что вы перетаскиваете приложение Visual Studio Code в папку -Applications-

В противном случае (как отмечено в комментариях) вам придется снова пройти этот процесс после перезагрузки

2. Затем откройте код Visual Studio

Откройте палитру команд через (⇧⌘P) и введите shell command команду Shell:

> Установите команду 'code' в команде PATH **.

! [Командная палитра

После выполнения команды перезапустите терминал, чтобы новое значение $ PATH вступило в силу. Вы сможете просто набрать «код». в любой папке, чтобы начать редактирование файлов в этой папке. "." Просто означает «текущий каталог»

это работает, но после перезагрузки я должен сделать это снова. Похоже, что Shell Command: Install 'code' command in PATH в VSCode просто создает символическую ссылку в /usr/local/bin/ настоящее время Убедитесь, что вы перетащили Visual Studio Code.app в папку «Приложения». В противном случае, как сказал @uloco, вам придется снова пройти этот процесс после перезагрузки. У меня нет команды оболочки в командной палитре. (работает на Linux Mint). какие-нибудь другие идеи? @jlucktay Привет, спасибо тебе, что ты только что решил мою путаницу .

Если вы хотите добавить его навсегда:

Добавьте это к себе

/.zshrc если вы работаете MacOS Catalina или позже.

export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"

Похоже, что теперь код находится в / usr / local / bin, поэтому, возможно, лучше обновить ответ :)

/.bashrc файл, используя vi/vim $ vi

Введите следующее, нажав i для вставки:

Сохраните файл, используя :wq

/.bashrc используя следующую команду:

Для тех из вас, кто запускает ZShell с Iterm2, добавьте это в свой

Спасибо, пользователь zsh и здесь, это было как раз то, что мне было нужно, хотя мой путь немного отличался, чтобы заставить его работать: alias code = "/ Applications / VisualStudioCode.app / Contents / Resources / app / bin / code"

Совет: если вы хотите запустить VSCode из терминала, добавьте следующее в ваш файл .bashrc

/.bashrc Отсутствует в официальной документации.

Было довольно просто следовать документации для установки «кода» в PATH, но это не сработало.

Сначала я просто удалил его, а затем снова установил.

Откройте палитру команд (⇧⌘P)

затем установите его снова.

Не забудьте перезапустить свой терминал, чтобы включить новый PATH.

На моем MAC я получил это работает:

добавить в .bash_profile

сохранить и в терминале 'source .bash_profile'

Затем в терминальном коде index.html (или что-то еще) откроет этот файл в VS Code.

идеально. Лучший (и самый простой) ответ здесь. Спасибо!

Я по глупости удалил свою /usr/local/bin/code символическую ссылку и не знал правильный путь. А переустанавливание завара воссоздала это:

Чтобы это работало, в вашем пути bash должен быть исполняемый файл с именем code, который некоторые инсталляторы добавили для вас, но этот, по-видимому, этого не сделал. Лучший способ сделать это - добавить символическую ссылку в приложение Visual Studio Code в вашей /usr/local/bin папке. Вы можете сделать это с помощью команды, подобной следующей в вашем терминале.

Скорее всего, вам придется поставить sudo перед этим, чтобы иметь разрешения для его успешного завершения.

"/ Applications / Visual \ Studio \ Code.app/Contents/MacOS/Electron" должно быть целью

Если у вас возникли проблемы с использованием решения « Палитра команд» , вы можете вручную добавить VS Code в $PATH переменную среды при запуске вашего терминала:

Для Mac OSX: есть способ установить код Visual Studio через Brew-Cask.

Теперь выполните следующую команду, и она установит последний код Visual Studio на ваш Mac.

$> варить бочку установить Visual-Studio-код

Приведенная выше команда должна установить код Visual Studio, а также настроить вызов командной строки кода Visual Studio.

Если вышеуказанные шаги не работают, то вы можете сделать это вручную. Следуя документации Microsoft Visual Studio, приведенной здесь .

Альтернатива командной строке Решение:

Недавно я играл со службами в Mac OS X. Я добавил службу в папку или файл, чтобы я мог открыть эту папку или файл в коде Visual Studio. Я думаю, что это может быть альтернативой использованию «кода». Команда, если вы используете приложение Finder. Вот шаги:

  • Откройте приложение Automator из приложения. (Или вы можете использовать Spotlight).
  • Нажмите на кнопку «Новый документ», чтобы создать новый скрипт.
  • Выберите «Сервис» в качестве нового типа документа.
  • Выберите «файлы и папки» в раскрывающемся списке «Служба получает выбранное».
  • Выполните поиск элемента действия «Открыть элементы поиска».
  • Перетащите этот элемент действия в область рабочего процесса.
  • Выберите приложение «Visual Studio Code.app» в раскрывающемся списке «Открыть с помощью действия».
  • Нажмите «command + s», чтобы сохранить сервис. Он спросит название службы. Дайте ему имя. Я дал «Открыть с помощью VSCode». Закройте приложение Automator. Проверьте изображение ниже для получения дополнительной информации.

введите описание изображения здесь

  • Откройте приложение Finder.
  • Щелкните правой кнопкой мыши по любой папке.
  • В контекстном меню найдите пункт меню «Открыть с помощью VSCode».
  • Нажмите на пункт меню «Открыть с помощью VSCode».
  • Папка должна открываться в приложении Visual Studio Code. Проверьте изображение ниже для получения дополнительной информации.

введите описание изображения здесь

РЕДАКТИРОВАТЬ: Если это происходит в Mint / Ubuntu, скорее всего, потому что вы установили vscode через менеджер программного обеспечения. Это вызовет другие проблемы во время отладки. Вместо этого установите его, используя файл .deb на веб-сайте vscode.

Если вы действительно хотите использовать диспетчер программного обеспечения, приведенное ниже решение все еще работает:

используйте, find / -name code 2> /dev/null чтобы найти путь к визуальному бин-студии. Должно закончиться /extra/vscode/bin/code

Если вы используете менеджер программного обеспечения mint, вы можете найти только пути с смехотворно длинным именем в середине, например:

Просто замените длинную часть на "/ active /"

Как только вы это сделаете, создайте ссылку sym:

ln -s path_you_found/extra/vscode/bin/code /usr/local/bin/code

Если у вас нет прав или вы хотите, чтобы они были доступны вам, просто добавьте эту строку в ваш .bashrc / .zshrc:

Я хотел бы иметь возможность отлаживать приложение Angular2 с кодом Visual Studio.

вот мое окружение:

  • OS: Ubuntu 16.10 x64
  • Обозреватель: хром 53.0.2785.143
  • узел: 6.8.0
  • угловой-cli: 1.0.0-бета.19-3

создание нового проекта с помощью angular-cli :

затем я открываю VSC и загружаю проект: File/open folder

угловой-CLI порт по умолчанию для запуска приложения - 4200. Изменить url с :"http://localhost:8080 "to"http://localhost:4200".

теперь браузер открывает приложение, но VSC имеет следующую ошибку: "Не удается подключиться к процесс выполнения, тайм-аут после 10000 МС - (причина: не удается подключиться к цели: connect ECONREFUSED 127.0.0.1:9222".

Я пытаюсь снова запустить отладку : та же ошибка, что и раньше (не удается подключиться).

Я также видел, что следующие аргументы могут помочь :

но это ничего не меняет.

я решил использовать VSC для моих разработчиков typescript (в основном angular2), и этот способ отладки кажется очень мощным. У меня такое чувство, что это было бы слишком плохо не использовать его :).

Спасибо за любую помощь !

редактировать 1: . Частичное улучшение . Я нашел способ получить отладочную информацию в консоли кода Visual Studio ! Так что это еще не идеально, поскольку точки останова не работают, но вот в чем дело. Пока что, если я открою http://localhost:9222 я ничего не видел. ("localhost не авторизовал соединение").

но, если я запускаю chromium так:

важно заметить, что аргумент : --user-data-dir=remote-profile . Если вы просто передадите --user-data-dir, он запустит новое окно без подключения. Но этого недостаточно. Вам нужно пройти удаленные-профиля как ценность.

enter image description here

  • он открывает новый браузер окно
  • я открываю http://localhost:4200 и я также могу достичь http://localhost:9222 !
  • я могу подключить VSC с опцией "прикрепить к chrome с исходной картой"! (как вы можете видеть, у меня есть "угловые 2 работает в режиме развития. Вызовите enableProdMode (), чтобы включить режим производства."отображается в консоли, а нижний колонтитул теперь имеет оранжевый фон)

enter image description here

пока, я надеюсь это может помочь некоторым людям. Но проблема в том, что точки останова не работают.

Я продолжаю копать и сделаю еще одно редактирование, если найду почему.

я смог решить эту проблему на OSX. Причиной такой боли Существует несколько причин, вызывающих эту проблему.

  1. вы попали на первый с --user-data-dir=remote-profile : Если вы уже используете Chrome (например, уже открыты вкладки - кто этого не делает?), вы должны использовать другой userDataDir чтобы Chrome запустил независимый экземпляр.
    правильный способ сделать это, однако, чтобы добавить "userDataDir": "$/.vscode/chrome", для вашего старта.конфигурация json (см. ниже). Это должно быть путь. Если используется "удаленный профиль", он пытается найти относительный каталог с именем "удаленный профиль".
  2. необходимо указать sourceMapPathOverrides в свой запуск.JSON config, значение которого зависит от вашей ОС:
    На OSX: "sourceMapPathOverrides": < "webpack:///./*": "$/*" >
    Windows: "sourceMapPathOverrides": < "webpack:///C:*":"C:/*" >
    Linux: "sourceMapPathOverrides": < "webpack:///*": "/*" >
    (Примечание: Я не тестировал версии Windows или Linux)

вот моя работа launch.json на OSX:

для этого нужно работать, работать ng serve в терминале, затем нажмите F5 внутри кода Visual Studio.

вот версии, с которыми я работаю:

  • angular-cli: 1.0.0-beta.24
  • узел: 7.3.0
  • хром: 55.0.2883.95
  • Код Visual Studio: 1.8.1
  • расширение VSCode "отладчик для Chrome" msjsdiag.отладчик-для-Хром: 2.4.2

я наконец-то полностью рабочая .

для тех, кто заинтересован :

(С помощью chromium-browser на Linux, но вы можете легко просто заменить на "chrome").

во-первых, вот запуск.в JSON config:

Я решил удалить часть с "request": "launch", так как мне нужно запустить новое окно браузера.

затем запустите браузер следующим образом:
chromium-browser --remote-debugging-port=9222 --user-data-dir=remote-profile

затем из VSC запустите отладку.

все должно работать нормально, и вы должны иметь возможность использовать точки останова:)

похожие на Аарон Ф. Анс Я использую следующую настройку для Angular 2+ develop в среде Windows

Я использую Angular CLI 1.7.3 и Angular: 5.2.9 на Mac OSX. Вот конфигурация, которая работает для меня:

следующая конфигурация хорошо работает для меня на macOS с помощью VSCode v1.23, угловой 6 и хром 66.

у меня проблема с запуском.json предоставлено Аароном Ф.

".скрипты " в командной строке отладчика дают такие URL-адреса:

so VS Code пытается использовать файл " / home/user/my-dream-app/src/app/webpack:/src/app / app.деталь.ts " (Примечание webpack: в середине).

исходные карты не работают, потому что мой Chrome дает url как "webpack: /" с одной косой чертой.

Решение

(1) Убедитесь, что ваше приложение находится в режиме отладки (не в режиме выпуска).

(2) Пожалуйста, включите параметры, такие как следующий снимок экрана.


Другие решения

Есть несколько вещей, которые вы можете проверить.

Прежде всего убедитесь, что код, в котором установлена ​​точка останова, достижим. Поместите его в точку входа вашего приложения.

Есть вероятность, что символы отладки где-то перепутались. Следовательно, попробуйте очистить / перестроить проект (вы можете попробовать удалить каталог bin / build вручную).

В Build-> Configuration Manager вы также можете проверить, действительно ли «Отладка» для конфигурации решения заставляет ваш проект выполняться в режиме отладки.

94 Saint [2012-02-21 11:49:00]

Когда я нахожу F5 (режим отладки), ничего не происходит. Строение работает правильно, exe файл, который я могу запустить правильно, но не могу запустить debug. Почему?

У меня была та же проблема, и все трюки не сделали этого, пока я не снял флажок "Включить хостинг Visual Studio" на вкладке отладки в свойствах проекта

45 mo. [2012-09-25 21:18:00]

Тьфу! Я испытывал те же самые симптомы, что и вы, и после того, как вы пробовали все предложения, единственным, кто работал, был ваш собственный: создание нового проекта и копирование всего содержимого.

Затем я заметил, что я не могу вручную удалить свой каталог Bin, и я понял, что MyApp.vshost.exe все время работал в фоновом режиме, не позволяя себе перезаписывать Visual Studio 2012. Не знаю, как это сделать все еще работал с VS2010:/

В итоге, решение, которое сработало для меня: Убейте процесс, повторите попытку.

Другими словами, вы пытались отключить и снова включить?

Перезагрузите VS и попробуйте отладить. Некоторое время это случается, даже у меня также была та же проблема.

Извините, что поставил старый вопрос, но сегодня у меня была такая же проблема, но причина была в том, что из-за порядка сборки решения. Если вы перейдете в Solution Property Pages → Common Properties → Startup Project .
Выбрано Multiple startup projects , переместите веб-проект в начало списка.

В моем решении для веб-приложений у меня есть 2 веб-проекта и 5 проектов кода, один из моих проектов кода был наверху, и поэтому отладка не запускалась.

Надеемся, что другие найдут это полезным

5 Neil [2016-03-14 14:10:00]

Это решение уже было упомянуто, но для его работы потребовалось некоторое вмешательство, поэтому ясное решение

На вкладке "Проект/вкладка" выберите "Свойства". (или в вашем браузере решений) Перейдите на вкладку "Отладка". Снимите флажок Включить процесс хостинга Visual Studio. (Снимите флажок) проверьте, работает ли он. если он не перезагружает ваш компьютер (некоторые из файлов проектов работают в фоновом режиме, если вы знаете, как их остановить, перезапуск не обязательно просто заканчивает их задачи) перестроить проект

это должно решить проблему

Что помогло мне решить эту проблему:

  • закрыть решение
  • удалить файл solution.suo
  • повторно открыть решение

Перед тем, как пройти интенсивное исправление. попробуйте это!

Просто запустите файл .exe в папке отладки. "Не закрывай!"

Запустите отладчик в Visual Studio. (i) Должна появиться ошибка. просто скажите "нет"

Закройте файл ".exe", который вы начали на этапе "1".

По какой-то причине визуальная студия застряла в этом приложении, которое я строю, но это сработало для меня.

Во-первых, в свойствах проекта и на вкладке Debug убедитесь, что ваш Start Action установлен на Start Project , а не какой-либо другой параметр, который не будет работать. Если это не разрешило, то:

Перейдите к Tools -> Options -> Environment -> Keyboard и в Show commands containing: введите Debug.Start и убедитесь, что для параметра Shortcuts for selected command: установлено значение F5 (Global) . Также убедитесь, что у вас нет ничего другого, сопоставленного с F5, который может конфликтовать.

Наконец, если это не решит вашу проблему, я предлагаю вам экспортировать текущие настройки среды в качестве резервной копии, а затем reset все настройки среды полностью. Посмотрите, разрешит ли это, если нет, а затем reimport ваши старые настройки и попробуйте восстановить визуальную студию.

закройте проект и удалите все файлы в папке projectinDebug , чтобы создать новое решение для отладки

1 joa [2013-04-23 23:19:00]

Перейдите в Обозреватель решений, щелкните правой кнопкой мыши проект, перейдите в свойства, нажмите "Отладка", внизу снимок установлен, установите флажок "Включить отладку SQL Server".

1 jmurphy [2013-05-22 20:10:00]

Убедитесь, что на вкладке "Проект" → "Свойства" → "Отладка" → "Начало действия", которые "Не запускать, но отлаживать мой код при запуске", не проверяется. Как-то это прошло через месяц после того, как я создал и работал над моим проектом.

Отметив это, я решил проблему.

У меня была такая же проблема с моим настольным приложением, и как этот форум говорит, что вы должны пометить свой проект как проект запуска, поскольку визуальная студия без опознавательных знаков.

Это сработало для меня отлично, и я считаю, что это поможет другим людям, которые могут иметь эту проблему.

0 Aidal [2016-10-13 13:35:00]

У меня была такая же проблема (видимо, несколько лет спустя), где я мог видеть свое устройство в VS 2015, но когда я хотел отлаживать устройство, ничего не происходило.

Это может быть другой вопрос, чем тот, который был у оригинального плаката, но это решение устранило проблему для меня в VS 2015.

Щелкните правой кнопкой мыши решение и выберите "Свойства", а затем отметьте, установлен ли флажок для вашего решения в столбце "Развернуть", если это не так, проверьте его и повторите попытку отладки. Работал для меня.


У меня была эта проблема в приложении WPF, над которым я работал. При запуске отладчика процесс с именем MyApp.VsHost.exe запускается и продолжает работать в фоновом режиме, но исключений не было бы выбрано и ничего в окне вывода, кроме информации о сборке.

Это произошло потому, что я изменил пространство имен моего класса App , но не обновил атрибут Class в App.xaml , чтобы соответствовать новому пространству имен. Я изменил пространство имен в файле xaml, и он снова работал.

Быстрое исправление, которое может помочь кому-то:


Если вы работаете с пакетом SSIS или с решением с несколькими приложениями внутри него. Удостоверьтесь, что у вас есть правильный набор приложений в качестве "Начального проекта".


Если у вас есть отдельный проект приложения или SSIS в той же папке, ваша Visual Studio, вероятно, создает это вместо того, что вы хотите запустить.

Надеюсь, это поможет!

У меня была такая же проблема, и, глядя на ответ брзлвеловера, я нашел следующую проблему, которая, казалось, работала для меня. Проводя это, если кто-то другой имеет такую ​​же проблему, они также могут проверить это.

0 Annye [2015-02-19 15:30:00]

Я нашел решение:

  • Закройте решение для Visual Studio
  • Откройте заголовок проекта .csproj с помощью блокнота ++, например.
  • Поиск тегов в разделе
  • Удалить тег конфигурации полностью
  • Откройте свое решение, и для меня теперь отладка работает над моим проектом.

0 GlennG [2013-06-03 02:07:00]

Этот процесс обычно работает для меня:

0 toregua [2013-01-23 15:39:00]

Я нашел решение:

  • Закройте решение для Visual Studio
  • Откройте заголовок проекта .csproj с помощью блокнота ++, например.
  • Найдите false в разделе

Visual Studio 2010

В консоли управления пакетами я запустил

и мое решение могло бы скомпилироваться.

Такая же ошибка, попробовал выполнить VS как Администратор, и он сработал.

Я столкнулся с этой проблемой. В моем случае, как-то пропустили проект проекта запуска. Поэтому убедитесь, что один из проектов в вашем решении explorer задан как проект запуска. Чтобы настроить проект запуска, щелкните правой кнопкой мыши по желаемому проекту в проводнике решений → нажмите " Установить как проект запуска"

Мой опыт работы с Visual Studio 2015, я попробовал удалить все процессы и перезапустить, это не сработало. Я попытался удалить каталог bin, это не сработало.

Проверьте Configuration Manager, убедитесь, что все проекты компилируются для одной и той же платформы.

Я отключил процесс хостинга, чтобы обойти проблему его оставления и оставить файлы заблокированными. Когда я это сделал, я обнаружил, что окно консоли не появилось, когда я ударил F5 для отладки, хотя моя программа прошла нормально. Затем я заметил, что у меня установлен флажок "Предпочтительный 32-разрядный". Я отмахивался от этого, перестроил и окно консоли появилось еще раз. Это показалось странным, поэтому я снова отметил его и подтвердил, что могу воспроизвести это поведение. Я использую Visual Studio 2013.

-1 Saint [2012-02-21 12:36:00]

Наконец я создал другой проект и скопировал существующие файлы и папки. Может быть, "непрофессиональный", но он работает:) К счастью, это небольшой проект

У меня очень смешное решение, но это сработало для меня,

Удерживайте клавишу F5, пока не увидите, что отладка началась, я серьезный парень.

Сообщество, где люди делятся уникальным опытом

Вопросы и ответы по любой теме от IT сообщества

Помогаем строить карьеру в IT-индустрии

Биржа удаленной работы для IT-специалистов

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Читайте также: