F# в Monodevelop: трассировка стека при открытии файла .fsx

Расширение .fsx обозначает файл Fsharp, который будет скомпилирован в исполняемый файл.

Не удается открыть файлы .fsx в Monodevelop (из репозитория Ubuntu Maverick). TargetInvocationException , FileNameNotResolved

Пожалуйста, посмотрите скриншот на flickr

Когда я переименовываю файл в .fs (файл сценария Fsharp), его можно открыть.

Собственно, у меня три вопроса:

  1. Почему я получаю эту трассировку стека? Я только что импортировал / добавил файл, и он действительно находится в папке решения.
  2. Как исправить монодевелопмент?
  3. Как я могу получить текст трассировки стека в файл журнала?

person knb    schedule 15.01.2011    source источник
comment
Чтобы было ясно, .fsx предназначен для скриптов, а .fs — для компиляции.   -  person Brian    schedule 15.01.2011


Ответы (2)


Эта ошибка возникала в более старых версиях F#. Используете ли вы Обновление F# за ноябрь 2010 г.?

(Для более подробной информации: с файлом fsx все в порядке, но языковая служба дает сбой при загрузке. Проблема в том, что служба IntelliSense F #, работающая в MonoDevelop, не может найти какую-либо сборку, на которую ссылаются. Это делается путем вызова компилятора F # и Компилятор F# содержал ошибку (в коде IntelliSense при использовании Mono), когда он пытался загрузить неправильный файл, например System вместо System.dll — обновление за ноябрь 2010 г. должно исправить это).

Если обновление F# не решает проблему, можете ли вы отправить реплику в список рассылки F# с открытым исходным кодом: http://groups.google.com/group/fsharp-opensource?

person Tomas Petricek    schedule 15.01.2011
comment
Я использовал файл fsharp_2.0-1_all.deb от 06.11.2010, загруженный с сайта codeplex.com download.codeplex.com/Project/Download/ Спасибо, Томас, за отличную работу, которую вы проделываете во всем, что связано с F#! (Я только начинаю с языка, но, например, я следил за вашими скринкастами) - person knb; 15.01.2011
comment
в начале нояб. 2010 было ДВА файла fsharp_2.0-1_all.deb с ОДНИМ ИМЕНЕМ ФАЙЛА, доступных для скачивания на официальном(их) сайте(ах). Обратите внимание на разницу в датах и ​​размерах: 3917318 2010-11-06 14:10 fsharp_2.0-1_all.deb 5060774 2010-11-12 19:24 fsharp_2.0-1_all(2).deb Я удалил fsharp.deb пакет с помощью Synaptic. Затем, после обновления моно (согласно рекомендации Кевина Канту в ответе), библиотеки fsharp были установлены в новый GAC в /usr/local/lib/mono/gac. Проблема решилась обновлением fsharp и mono. - person knb; 16.01.2011
comment
Я слышал, что ребята из Mono серьезно относятся к тому, чтобы упаковать F# со своими программами, так что скоро все должно стать проще. - person Kevin Cantu; 16.01.2011

Обновите свой моно. Ubuntu 10.10 имеет старую версию Mono, которая, кажется, вызывает много проблем с fsi.exe. И это медленнооооо. Учитывая F#, по крайней мере, Debian (upstream) и Ubuntu должны скоро обновить 2.6.7 до одного из выпусков 2.8.x!

Я экспериментировал с этой версией версии Mono 2.8.2, и мои программы работают намного лучше. (Я еще не синхронизировал исполняемый файл cli и MonoDevelop, а просто запускал /new/path/mono fsc.exe или что-то еще, но я намного счастливее.)

person Kevin Cantu    schedule 15.01.2011
comment
Я скачал моно версию 2.8.2, которую вы рекомендовали. Собрал его из исходников, установил в /usr/local, задал env var MONO_GAC_PREFIX=/usr/local:/usr в /etc/profile.d/myshellscript.sh и перезагрузился. Monodevelop теперь говорит, что предпочитает 2.8.2 по умолчанию, 2.6.7 в качестве запасного варианта. Проблема с файлами fsx осталась. Я буду пытаться. - person knb; 16.01.2011