Хобрук: Ваш путь к мастерству в программировании

Visual Studio 2013 Express Edition, присоединение к процессу (приложение Java JNI), похоже, не работает

Я работаю над приложением Java, используя интерфейс JNI для DLL, написанный на C.
Когда я запускаю приложение в Eclipse и пытаюсь выполнить «Присоединение к процессу» в коде C (в Visual Studio 2013 ), похоже, это не работает: в моих контрольных точках Visual Studio упоминается:

Точка останова в настоящее время не будет достигнута. Для этого документа не загружено ни одного символа.

Я проверил каталоги компиляции/среды выполнения, все в порядке.
Одна вещь, в которой я не уверен, это тип кода, который мне нужно использовать:
Как уже упоминалось, мое приложение является приложением Java. , следовательно, в Visual Studio свойства проекта, параметр Command, равны

"$(JAVA_HOME)\bin\java.exe"

Имя моего Java-приложения указано в аргументах команды.

Я не уверен, но полагаю, что моя проблема связана с несоответствием программы Java.exe и типа кода, который мне нужно использовать. Их шесть (в окне "Отладка, Присоединение к процессу, Выбрать (Выбор типа кода)):

  • GPU — программный эмулятор
  • Управляемый (v3.5, v3.0, v2.0)
  • Управляемый (v4.5, v4.0)
  • Родной
  • Скрипт
  • Управляемый режим совместимости

В целях устранения, кто-нибудь знает, как я могу определить, какой из упомянутых типов кода соответствует (-им) программе/приложению Java? (Мои первые попытки с автоматическим определением Visual Studio типа кода не увенчались успехом)


  • Это родное. Управляемый означает .NET. Я не уверен, что именно Script или GPU означают в контексте Visual Studio, но это определенно не то, что вам нужно. 12.10.2015
  • Спасибо, Immibis, я только что попробовал, и теперь мои точки останова выглядят нормально. Я попытался пометить ваш комментарий как правильный ответ, но я могу только проголосовать за него как за полезный комментарий. 12.10.2015
  • Может быть, интересный комментарий: я отметил точку останова в начале своего Java-приложения. Когда я запускаю это приложение, эта точка останова срабатывает, и мне требуется некоторое время для определения идентификатора процесса для выполнения моего подключения к процессу. В этот момент в Visual Studio у меня есть упомянутое сообщение об ошибке при просмотре моей точки останова C, но когда я продолжаю процесс в Eclipse, точки останова в моей Visual Studio становятся действительными. 12.10.2015

Ответы:


1
  • GPU — программный эмулятор

  • Скрипт

Я точно не знаю, что они означают в контексте Visual Studio, но это определенно не то, что вам нужно.

  • Управляемый (v3.5, v3.0, v2.0)
  • Управляемый (v4.5, v4.0)
  • Управляемый режим совместимости

Управляемый — это причудливый способ Microsoft назвать .NET, который вы не используете.

  • Родной

Нативный код — это машинный код, скомпилированный традиционным способом. Это то, что вы хотите.

12.10.2015
Новые материалы

Как симулировать серию пенальти на Python с помощью симуляции Монте-Карло, часть 1: генерация функций
Серия пенальти была огромным испытанием во время чемпионата мира по футболу. Они вызвали много споров в социальных сетях и новостных агентствах. Даже финальный матч турнира решался по..

AST для разработчиков JavaScript
TL; DR Эта статья - мое выступление на недавно состоявшейся конференции Stockholm ReactJS Meetup. Вы можете посмотреть слайды здесь..

5 проектов на Python, которые нужно создать прямо сейчас!
Добро пожаловать! Python — один из моих любимых языков программирования. Если вы новичок в этом языке, перейдите по ссылке ниже, чтобы узнать о нем больше:

Dall-E 2: недавние исследования показывают недостатки в искусстве, созданном искусственным интеллектом
DALL-E 2 — это всеобщее внимание в индустрии искусственного интеллекта. Люди в списке ожидания пытаются заполучить продукт. Что это означает для развития креативной индустрии? О применении ИИ в..

«Очень простой» эволюционный подход к обучению с подкреплением
В прошлом семестре я посетил лекцию по обучению с подкреплением (RL) в моем университете. Честно говоря, я присоединился к нему официально, но я редко ходил на лекции, потому что в целом я нахожу..

Освоение информационного поиска: создание интеллектуальных поисковых систем (глава 1)
Глава 1. Поиск по ключевым словам: основы информационного поиска Справочная глава: «Оценка моделей поиска информации: подробное руководство по показателям производительности » Глава 1: «Поиск..

Фишинг — Упаковано и зашифровано
Будучи старшим ИТ-специалистом в небольшой фирме, я могу делать много разных вещей. Одна из этих вещей: специалист по кибербезопасности. Мне нравится это делать, потому что в настоящее время я..