Java 为什么可以';我似乎从build.sbt中排除了这个可传递依赖项?(继续出现在ivyReport中)
我正在处理一个编译但在加载时引发异常的项目:Java 为什么可以';我似乎从build.sbt中排除了这个可传递依赖项?(继续出现在ivyReport中),java,scala,intellij-idea,dependencies,sbt,Java,Scala,Intellij Idea,Dependencies,Sbt,我正在处理一个编译但在加载时引发异常的项目: [error] (run-main-5) java.util.ServiceConfigurationError: com.fasterxml.jackson.databind.Module: com.spotify.ffwd.http.fasterxml.jackson.datatype.jdk8.Jdk8Module not a subtype [error] java.util.ServiceConfigurationError: com.fa
[error] (run-main-5) java.util.ServiceConfigurationError: com.fasterxml.jackson.databind.Module: com.spotify.ffwd.http.fasterxml.jackson.datatype.jdk8.Jdk8Module not a subtype
[error] java.util.ServiceConfigurationError: com.fasterxml.jackson.databind.Module: com.spotify.ffwd.http.fasterxml.jackson.datatype.jdk8.Jdk8Module not a subtype
[error] at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:590)
[error] at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNextService(ServiceLoader.java:1237)
[error] at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator$1.run(ServiceLoader.java:1268)
[error] at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator$1.run(ServiceLoader.java:1267)
[error] at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
[error] at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNext(ServiceLoader.java:1270)
[error] at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1300)
[error] at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1385)
[error] at com.fasterxml.jackson.databind.ObjectMapper.findModules(ObjectMapper.java:994)
[error] at org.apache.beam.sdk.options.PipelineOptionsFactory.<clinit>(PipelineOptionsFactory.java:468)
[error] at com.spotify.scio.ScioContext$.defaultOptions(ScioContext.scala:293)
[error] at com.spotify.scio.ScioContext$.apply(ScioContext.scala:216)
[error] at com.mycompany.data.adaccountpipeline.endpoints.ExportUsersJob$.main(ExportUsersJob.scala:25)
[error] at com.mycompany.data.adaccountpipeline.endpoints.ExportUsersJob.main(ExportUsersJob.scala)
[error] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[error] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[error] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[error] at java.base/java.lang.reflect.Method.invoke(Method.java:567)
但是如果我做了ivyReport
和show ivyReport
我仍然能看到
<module organisation="com.spotify.ffwd" name="ffwd-http-client">
<revision name="0.4.0" status="release" pubdate="20171219102239" resolver="sbt-chain" artresolver="sbt-chain" homepage="https://github.com/spotify/ffwd" downloaded="false" searched="false" default="false" conf="compile, runtime(*), master(compile), runtime, compile(*), master" position="106">
<license name="The Apache Software License, Version 2.0" url="http://www.apache.org/licenses/LICENSE-2.0.txt"/>
<metadata-artifact status="no" details="" size="3463" time="0" location="/Users/acheong/.ivy2/cache/com.spotify.ffwd/ffwd-http-client/ivy-0.4.0.xml" searched="false" origin-is-local="false" origin-location="https://artifactory.spotify.net/artifactory/repo/com/spotify/ffwd/ffwd-http-client/0.4.0/ffwd-http-client-0.4.0.pom"/>
<caller organisation="com.spotify.metrics" name="semantic-metrics-ffwd-http-reporter" conf="compile, runtime" rev="0.4.0" rev-constraint-default="0.4.0" rev-constraint-dynamic="0.4.0" callerrev="1.0.2"/>
<artifacts>
<artifact name="ffwd-http-client" type="jar" ext="jar" status="no" details="" size="6270059" time="0" location="/Users/acheong/.ivy2/cache/com.spotify.ffwd/ffwd-http-client/jars/ffwd-http-client-0.4.0.jar">
<origin-location is-local="false" location="https://artifactory.spotify.net/artifactory/repo/com/spotify/ffwd/ffwd-http-client/0.4.0/ffwd-http-client-0.4.0.jar"/>
</artifact>
</artifacts>
</revision>
</module>
但是IntelliJ在我为SBT插件增加内存后也会耗尽内存。我犯了一个业余错误。并非我所有的尝试都有效,因为我不知道:
必须运行命令才能重新读取build.sbt强>
或者,重新启动sbt
,我有时会这样做,但并不总是这样,因此我的尝试应用不一致
来自C++/Makefiles和Java/Maven,我只想在Scala/SBT中稍作修改,我希望SBT“知道”是否有任何文件的时间戳比上次构建的时间戳更近,并相应地刷新。我没有意识到,sbt
交互式shell实际上使用build.sbt作为其静态配置
<module organisation="com.spotify.ffwd" name="ffwd-http-client">
<revision name="0.4.0" status="release" pubdate="20171219102239" resolver="sbt-chain" artresolver="sbt-chain" homepage="https://github.com/spotify/ffwd" downloaded="false" searched="false" default="false" conf="compile, runtime(*), master(compile), runtime, compile(*), master" position="106">
<license name="The Apache Software License, Version 2.0" url="http://www.apache.org/licenses/LICENSE-2.0.txt"/>
<metadata-artifact status="no" details="" size="3463" time="0" location="/Users/acheong/.ivy2/cache/com.spotify.ffwd/ffwd-http-client/ivy-0.4.0.xml" searched="false" origin-is-local="false" origin-location="https://artifactory.spotify.net/artifactory/repo/com/spotify/ffwd/ffwd-http-client/0.4.0/ffwd-http-client-0.4.0.pom"/>
<caller organisation="com.spotify.metrics" name="semantic-metrics-ffwd-http-reporter" conf="compile, runtime" rev="0.4.0" rev-constraint-default="0.4.0" rev-constraint-dynamic="0.4.0" callerrev="1.0.2"/>
<artifacts>
<artifact name="ffwd-http-client" type="jar" ext="jar" status="no" details="" size="6270059" time="0" location="/Users/acheong/.ivy2/cache/com.spotify.ffwd/ffwd-http-client/jars/ffwd-http-client-0.4.0.jar">
<origin-location is-local="false" location="https://artifactory.spotify.net/artifactory/repo/com/spotify/ffwd/ffwd-http-client/0.4.0/ffwd-http-client-0.4.0.jar"/>
</artifact>
</artifacts>
</revision>
</module>