Спокойной ночи.
Я недавно использовал JCo с Java, и я думаю, что это здорово, но я все чаще использую SCALA, поскольку больше хобби и что-то, что я нахожу, делает программирование более приятным.
Для тех, кто не знает, что такое SAP JCo, и хотите спасти себя от поиска:
SAP Java Connector (SAP JCo) является промежуточным компонентом, который позволяет разрабатывать совместимые с SAP компоненты и приложения на Java. SAP JCo поддерживает связь с SAP-сервером в обоих направлениях: входящие вызовы (вызовы Java ABAP) и исходящие вызовы (ABAP вызывает Java). SAP JCo может быть реализован с помощью настольных приложений и приложений веб-сервера. Источник
И мне стало любопытно, можно ли использовать соединитель SAP JCo вместе с SCALA? Я знаю, что нет прямого способа сделать это, но есть ли у кого-нибудь опыт? Это было бы очень привлекательным решением для меня. Я предпочитаю программировать в SCALA по Java, когда это возможно, и моя компания не такая большая, поэтому я часто беру на себя все программы самостоятельно, а это значит, что я не буду влиять на кого-либо, используя SCALA вместо Java.
У кого-нибудь есть опыт? Ура!
Недавно я написал небольшую библиотеку в Scala поверх SAP JCo (закрытый источник, извините). Не уверен, что вы подразумеваете под "Я знаю, что нет прямого способа сделать это": как уже сказано в других ответах, JCo - это библиотека Java, и поэтому она может быть легко использована из Scala. Тот факт, что JCo обертывает собственные библиотеки SAP (.so,.ddl), не имеет значения с точки зрения Scala.
Я не эксперт Scala, но его запись в Википедии говорит мне, что
Библиотеки Java могут использоваться непосредственно в коде Scala и наоборот.
Поскольку часть JCo, с которой вы взаимодействуете как разработчик, является Java JAR-библиотекой, это также должно применяться.
Scala компилируется в байт-код Java, и действительно, их можно смешивать и сопоставлять. Одна вещь, которую вы, возможно, захотите рассмотреть, - это если у вас есть коллеги, которые могут модифицировать и расширять ваш код, если это необходимо. Замечательно, что у вас так много свободы, но я не думаю, что вы хотите быть в ситуации, когда вы всегда единственный, кто может исправить ситуацию.