Не удается скомпилировать MojoPortal на Mono: /usr/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(5,5): ошибка MSB3073 - PullRequest
0 голосов
/ 29 февраля 2020

Я пытаюсь скомпилировать MojoPortal на Linux для MySQL для Mono. Моя цель - создать веб-приложение, которое будет работать на серверах Windows и Linux с использованием технологий Microsoft. Я полностью осознаю, что MojoPortal официально не поддерживает Mono в течение многих лет , но из-за некоторых ... сложных обстоятельств я не могу просто создать свое приложение в ASP . NET Моно или. NET Ядро напрямую. Также я не могу просто написать приложение на PHP или любой другой серверной технологии, которая, как доказано, работает на обеих платформах.

Для этого проекта я использую последнюю стабильную версию MojoPortal, полученную из официальный репозиторий GitHub.

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

/usr/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(5,5): Error MSB3073: The command "if "Debug" == "Release - SQLite" xcopy /s /y /d "/home/callum/Working/mojoportal/Web/data/sqlitedb/sqlite3.dll" "/home/callum/Working/mojoportal/Web/bin/"
if "Debug" == "Debug - SQLite" xcopy /s /y /d "/home/callum/Working/mojoportal/Web/data/sqlitedb/sqlite3.dll" "/home/callum/Working/mojoportal/Web/bin/"" exited with code 2. (MSB3073) (mojoPortal.Web)

Глядя на это, он, кажется, жалуется на пакеты SQLite , но я не хочу использовать SQLite; Я хочу использовать MySQL! Я прорабатывал все различные режимы сборки MySQL, но, похоже, ничего не работает. Что мне делать?

1 Ответ

0 голосов
/ 02 марта 2020

mojoPortal больше не поддерживает работу на Linux с моно и не поддерживает в течение нескольких лет. Это не значит, что это не сработает, просто команда разработчиков вообще не тестирует и не нацеливается на Mono.

Убедитесь, что вы строите на уровне данных MySQL, а не на уровне sqlite. Оттуда убедитесь, что вы не развертываете sqlite3.dll на своем сервере. Возможно, вы работаете со слоем данных MySQL, но в ваших файлах есть sqlite3.dll, поэтому Mono пытается его собрать JIT.

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

...