Вопрос

Я скачал исходные тексты IKVM (http://www.ikvm.net/) из http://sourceforge.net/cvs/?group_id=69637

Теперь я пытаюсь заставить его собраться в Visual Studio 2008 и застрял.Кто-нибудь знает документацию о том, как создать эту штуку, или мог бы даже дать мне указания?

Я попытался открыть ikvm8.sln, который открывает все проекты, но попытка создать решение приводит к куче ошибок "не удалось найти тип или пространство имен".

Как вы, наверное, можете догадаться, я не эксперт по Visual Studio, а скорее привык работать с Java в Eclipse.

Итак, опять же, я ищу либо то, либо другое:пошаговые инструкции или ссылка на документацию о том, как создать IKVM в Visual Studio.

Дайте мне знать, если вам понадобится дополнительная информация.Спасибо за любую помощь!

Редактировать: Я также пробовал использовать руководство "MsBuild.exe IKVM8.sln", но также получаю кучу:

JniInterface.cs(30,12): error CS0234: The type or namespace name 'Internal' does not exist in the namespace 'IKVM' (a
re you missing an assembly reference?)
JniInterface.cs(175,38): error CS0246: The type or namespace name 'ClassLoaderWrapper' could not be found (are you mi
ssing a using directive or an assembly reference?)
JniInterface.cs(175,13): error CS0246: The type or namespace name 'ClassLoaderWrapper' could not be found (are you mi
ssing a using directive or an assembly reference?)

Правка №2:Я заметил файл "ikvm.build", поэтому скачал и запустил nant в папке, что позволило мне продвинуться еще на шаг.Несколько вещей начинают успешно собираться, к сожалению, теперь я получаю следующую ошибку:

ikvm-родной для win32:

            [mkdir] Creating directory 'C:\Documents and Settings\...\My Documents\ikvm\ikvm\native\Release'.
               [cl] Compiling 2 files to 'C:\Documents and Settings\...\My Documents\ikvm\ikvm\native\Release'.
        BUILD FAILED
        C:\Documents and Settings\...\My Documents\ikvm\ikvm\native\native.build(17,10):
        'cl' failed to start.
           The system cannot find the file specified
        Total time: 0.2 seconds.

Правка №3:Хорошо, решил это, поставив cl.exe в пути, однако, по-прежнему получаю другие ошибки. Примечание. это все для создания его на консоли, напримерс Нантом.Неужели нет способа заставить его встроить в Visual Studio?Это было бы печально...

Правка №4:Следующим шагом была установка GNU classpath 0.95, и теперь, похоже, мне нужна конкретная установка OpenJDK...Linux AMD64?!

             [exec] javac: file not found: ..\..\openjdk6-b12\control\build\linux-amd64\gensrc\com\sun\accessibility\internal\resources\accessibility.java
             [exec] Usage: javac <options> <source files>
             [exec] use -help for a list of possible options

Правка №5:Получил ответ от автора.Смотрите ниже или по адресу http://weblog.ikvm.net/CommentView.aspx?guid=7e91b51d-6f84-4485-b61f-ea9e068a5fcf Давайте посмотрим, сработает ли это...

Правка №6 Как я и опасался, следующая проблема:"не удается открыть windows.h", см. Отдельный вопрос здесь.

Окончательное редактирование:Найдено Решение! После получения папок Platform SDK в переменных среды Lib и Path решение, которое я описал ниже, сработало для меня.

Это было полезно?

Решение 2

Хорошо, только что получил следующий ответ от автора: http://weblog.ikvm.net/CommentView.aspx?guid=7e91b51d-6f84-4485-b61f-ea9e068a5fcf

Если вы хотите строить на основе резюме, действуйте по своему усмотрению.Однако вам будет проще создавать исходные тексты, если вы используете официальный релиз.

Если вы скачаете ikvm-0.36.0.11.zip, classpath-0.95-stripped.zip и openjdk-b13-stripped.zip из SourceForge (последние два находятся в выпуске ikvm 0.36.0.5), у вас будут все необходимые исходные тексты.

Теперь вам нужно будет открыть командную строку Visual Studio 2008 (т. е.тот, у которого есть cl.exe и peverify в пути).

Затем в корневом каталоге ikvm выполните "nant clean", за которым следует "nant".На этом должен строиться весь проект.После этого вы сможете выполнять сборку в Visual Studio (только для отладки), но вам может потребоваться восстановить ссылки на сборки в проектах (если у вас не установлена ikvm в c:\ikvm).

С уважением, Йерун

Редактировать:После того, как я убедился, что папки Platform SDK находятся в переменных окружения Path и Lib, у меня это сработало.Спасибо, Джерун!

Другие советы

Я не знаю, поможет ли это вам, но можете ли вы попробовать выполнить сборку из командной строки?

msbuild ________

Я думаю, что именно так я создал приложение из-за тех же проблем.

Вот как я собрал IKVM 8.1.5717.0 из исходного кода.Visual Studio не требуется.

  • Создайте папку:c:\ikvm\

  • Добавьте указанную выше папку в PATH (например,установите PATH=%ПУТЬ%;c:\ikvm и оставьте командную строку открытой на потом).

  • Скачать:ikvmsrc-8.1.5717.0.zip (http://www.frijters.net/ikvmsrc-8.1.5717.0.zip)

  • Распакуйте архив и поместите папку "ikvm-8.1.5717.0" в c:\ikvm\

  • Скачать:openjdk-8u45-b14-stripped.zip (http://www.frijters.net/openjdk-8u45-b14-stripped.zip)

  • Распакуйте архив и поместите папку "openjdk-8u45-b14" в c:\ikvm\

  • Скачать:Java 8 SDK (http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)

  • Установите и убедитесь, что местоположение добавлено в path

  • Скачать:NAnt 0.92 (https://sourceforge.net/projects/nant/files/nant/0.92/nant-0.92-bin.zip/download)

  • Распакуйте архив и поместите папку "nant-0.92" в c:\ikvm\

  • ICSharpCode.SharpZipLib.dll (http://www.icsharpcode.net/opensource/sharpziplib/Download.aspx)

  • Поместите "ICSharpCode.SharpZipLib.dll" в C:\ikvm\ikvm-8.1.5717.0\bin\

  • Откройте следующий файл в текстовом редакторе и измените номер версии:C:\ikvm\ikvm-8.1.5717.0\CommonAssemblyInfo.cs.in

  • Используя командную строку из предыдущей версии, компакт-диск для:C:\ikvm\ikvm-8.1.5717.0\ikvm\

  • Бежать:.. ant-0.92\bin Ant.exe

  • В случае успеха все двоичные файлы будут в:C:\ikvm\ikvm-8.1.5717.0\bin

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top