Штаны терпят неудачу с ошибками, связанными с scala при сборке python

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

$ ./pants binary src/python/hworld
INFO] Detected git repository at /home/jovalko/pants on branch master

23:03:48 00:00 [main]
               (To run a reporting server: ./pants server)
23:03:48 00:00   [bootstrap]
23:03:48 00:00   [setup]
23:03:48 00:00     [parse]
FAILURE: 
       Failed to resolve target for tool: //:scala-compiler. This target was obtained from
       option scalac in scope scala-platform. You probably need to add this target to your tools
       BUILD file(s), usually located in BUILD.tools in the workspace root.
       Exception AddressLookupError: name 'scala_jar' is not defined
while executing BUILD file FilesystemBuildFile(/home/jovalko/pants/BUILD.tools)
Loading addresses from '' failed.



23:03:48 00:00   [complete]
               FAILURE

Поскольку все фрагменты моей проблемы сложно выразить как одну вставку, я разместил их на github (извинения за внешние ссылки).

Соответствующие биты мой верхний уровень BUILD:

# Pants source code
source_root('src/python')

и BUILD для моего двоичного hworld:

python_binary(name='hworld',
    source='hworld.py'
)

Возможно также BUILD.tools но он длинный, и я скопировал его прямо из брюк брюк / брюк (как показано в документации, я начинаю с рабочей версии из другого репо).

Я пытался различные перестановки (с BUILD.tools, без, различные вещи в pants.ini) но в любом случае это не удается из-за чего-то связанного со scala... что немного озадачивает, так как я только собираю python. И, бег в пределах брюк брюк / репо штанов работает хорошо для меня.

Я напомню вам, что я новичок в штанах, и, вероятно, я сделал что-то глупое;). Есть идеи?

2 ответа

Решение

В случае, если кто-то еще ударит это, я решил это, удалив связанный с Scala (в частности, все, что использовалось scala_jar) записи из моего BUILD.tools:

diff --git a/BUILD.tools b/BUILD.tools
index d0f1cf7..049fb2f 100644
--- a/BUILD.tools
+++ b/BUILD.tools
@@ -23,32 +23,3 @@ jar_library(name = 'scala-repl',
               ':scala-library',
             ])

-jar_library(name = 'scalastyle',
-            jars = [
-              scala_jar(org='org.scalastyle', name='scalastyle', rev='0.3.2')
-            ])
-
-jar_library(name = 'scrooge-gen',
-            jars = [
-              scala_jar(org='com.twitter', name='scrooge-generator', rev='3.20.0',
-                        excludes=[
-                          # scrooge requires libthrift 0.5.0-1 which is not available on
-                          # the default maven repos. Force scrooge to use thrift-0.6.1, which
-                          # is compatible, instead.
-                          exclude(org = 'org.apache.thrift', name = 'libthrift')
-                        ])
-            ],
-            dependencies = [
-              '3rdparty:thrift-0.6.1',
-            ])
-
-jar_library(name = 'scrooge-linter',
-            jars = [
-              scala_jar(org='com.twitter', name='scrooge-linter', rev='3.20.0',
-                        excludes=[
-                          exclude(org = 'org.apache.thrift', name = 'libthrift')
-                        ])
-            ],
-            dependencies = [
-              '3rdparty:thrift-0.6.1',
-            ])
diff --git a/src/python/hworld/BUILD b/src/python/hworld/BUILD
index ecfdd58..6407c02 100644
--- a/src/python/hworld/BUILD
+++ b/src/python/hworld/BUILD

Это похоже на случай, когда ваша установка брюк использовала код от master, но версия брюк в вашем виртуальном окружении была на несколько коммитов позади. В соответствии с вашим брюкой брюк вы используете версию 0.0.50 в своем примере, которая автоматически извлекает версию 0.0.50 из pypi.

Но реализация scala_jar оказалась в диапазоне от 0.0.50 до 0.0.51, в частности, этот коммит здесь.

Путем внесения изменений в ваш diff и столкновения с ants_version в вашем ants.ini, я смог заставить ваш проект скомпилироваться. Я рад, что вы нашли то, что позволило вам прогрессировать.

Другие вопросы по тегам