opendiffy / diffy

Other
1.25k stars 142 forks source link

Failed when using ./sbt assembly to build my own diffy-server.jar from the code #24

Closed yufenyan closed 2 years ago

yufenyan commented 5 years ago

Step1:clone the code Step2:cd diffy Step3:./sbt assembly image

then it failed with some errors: image image

puneetkhanduri commented 5 years ago

@yufenyan : You might want to delete your ivy cache and try again.

Unfortunately, I don't have access to a Windows machine and it won't be possible for me to debug this issue if it might have something to do with the sbt-windows combination.

On way to unblock yourself is the use the docker image instead of the jar. The docker image actually run ./sbt assembly.

yufenyan commented 5 years ago

Thank you for your patience to read my question,I will try to some other ways to solve this problem.Thanks again.

rjw245 commented 4 years ago

I also can't get Diffy to start. The Docker container is also apparently broken:

docker run -it diffy/diffy
18:21:34.090 [main] INFO com.twitter.util.logging.Slf4jBridgeUtility$ - org.slf4j.bridge.SLF4JBridgeHandler installed.
18:21:34.431 [main] INFO ai.diffy.Main$ - Process started
18:21:34.575 [main] INFO ai.diffy.Main$ - Serving admin http on 0.0.0.0/0.0.0.0:8881
18:21:35.206 [main] WARN com.twitter.finagle.util.DefaultTimer - Can not service-load a timer. Using JavaTimer instead.
18:21:35.212 [main] INFO com.twitter.finagle - Finagle version 19.8.0 (rev=91a366ca88ba7231eeced7987f3835ff1eb0a0c1) built at 20190805-173757
com.google.inject.CreationException: Unable to create injector, see the following errors:

1) Error in custom provider, java.lang.IllegalArgumentException: flag 'summary.email' not found
  at ai.diffy.DiffyServiceModule$.settings(DiffyServiceModule.scala:87) (via modules: com.google.inject.util.Modules$OverrideModule -> ai.diffy.DiffyServiceModule$)
  at ai.diffy.DiffyServiceModule$.settings(DiffyServiceModule.scala:87) (via modules: com.google.inject.util.Modules$OverrideModule -> ai.diffy.DiffyServiceModule$)
  while locating ai.diffy.proxy.Settings
Caused by: java.lang.IllegalArgumentException: flag 'summary.email' not found
    at com.twitter.app.Flag.flagNotFound(Flag.scala:143)
    at com.twitter.app.Flag.apply(Flag.scala:198)
    at ai.diffy.DiffyServiceModule$.settings(DiffyServiceModule.scala:101)
    at ai.diffy.DiffyServiceModule$$$FastClassByGuice$$23f6cab7.invoke(<generated>)
    at com.google.inject.internal.ProviderMethod$FastClassProviderMethod.doProvision(ProviderMethod.java:264)
    at com.google.inject.internal.ProviderMethod$Factory.provision(ProviderMethod.java:401)
    at com.google.inject.internal.ProviderMethod$Factory.get(ProviderMethod.java:376)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
    at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
    at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
    at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085)
    at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
    at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
    at com.google.inject.Guice.createInjector(Guice.java:99)
    at com.google.inject.Guice.createInjector(Guice.java:84)
    at com.twitter.inject.app.internal.InstalledModules$.create(InstalledModules.scala:38)
    at com.twitter.inject.app.App.loadModules(App.scala:146)
    at com.twitter.inject.app.App.loadModules$(App.scala:141)
    at ai.diffy.MainService.loadModules(Main.scala:10)
    at com.twitter.inject.app.App.main(App.scala:55)
    at com.twitter.inject.app.App.main$(App.scala:54)
    at com.twitter.inject.server.TwitterServer.main(TwitterServer.scala:173)
    at com.twitter.inject.server.TwitterServer.main$(TwitterServer.scala:172)
    at ai.diffy.MainService.main(Main.scala:10)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.twitter.app.App.$anonfun$nonExitingMain$4(App.scala:364)
    at scala.Option.foreach(Option.scala:274)
    at com.twitter.app.App.nonExitingMain(App.scala:363)
    at com.twitter.app.App.nonExitingMain$(App.scala:344)
    at ai.diffy.MainService.nonExitingMain(Main.scala:10)
    at com.twitter.app.App.main(App.scala:333)
    at com.twitter.app.App.main$(App.scala:331)
    at ai.diffy.MainService.main(Main.scala:10)
    at ai.diffy.Main.main(Main.scala)

2) Error in custom provider, java.lang.IllegalArgumentException: flag 'summary.email' not found
  at ai.diffy.DiffyServiceModule$.settings(DiffyServiceModule.scala:87) (via modules: com.google.inject.util.Modules$OverrideModule -> ai.diffy.DiffyServiceModule$)
  at ai.diffy.DiffyServiceModule$.settings(DiffyServiceModule.scala:87) (via modules: com.google.inject.util.Modules$OverrideModule -> ai.diffy.DiffyServiceModule$)
  while locating ai.diffy.proxy.Settings
    for the 2nd parameter of ai.diffy.proxy.DifferenceProxyModule$.providesDifferenceProxy(DifferenceProxy.scala:25)
  at ai.diffy.proxy.DifferenceProxyModule$.providesDifferenceProxy(DifferenceProxy.scala:25) (via modules: com.google.inject.util.Modules$OverrideModule -> ai.diffy.proxy.DifferenceProxyModule$)
  while locating ai.diffy.proxy.DifferenceProxy
Caused by: java.lang.IllegalArgumentException: flag 'summary.email' not found
    at com.twitter.app.Flag.flagNotFound(Flag.scala:143)
    at com.twitter.app.Flag.apply(Flag.scala:198)
    at ai.diffy.DiffyServiceModule$.settings(DiffyServiceModule.scala:101)
    at ai.diffy.DiffyServiceModule$$$FastClassByGuice$$23f6cab7.invoke(<generated>)
    at com.google.inject.internal.ProviderMethod$FastClassProviderMethod.doProvision(ProviderMethod.java:264)
    at com.google.inject.internal.ProviderMethod$Factory.provision(ProviderMethod.java:401)
    at com.google.inject.internal.ProviderMethod$Factory.get(ProviderMethod.java:376)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
    at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
    at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
    at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
    at com.google.inject.internal.ProviderMethod$Factory.provision(ProviderMethod.java:402)
    at com.google.inject.internal.ProviderMethod$Factory.get(ProviderMethod.java:376)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
    at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
    at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
    at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085)
    at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
    at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
    at com.google.inject.Guice.createInjector(Guice.java:99)
    at com.google.inject.Guice.createInjector(Guice.java:84)
    at com.twitter.inject.app.internal.InstalledModules$.create(InstalledModules.scala:38)
    at com.twitter.inject.app.App.loadModules(App.scala:146)
    at com.twitter.inject.app.App.loadModules$(App.scala:141)
    at ai.diffy.MainService.loadModules(Main.scala:10)
    at com.twitter.inject.app.App.main(App.scala:55)
    at com.twitter.inject.app.App.main$(App.scala:54)
    at com.twitter.inject.server.TwitterServer.main(TwitterServer.scala:173)
    at com.twitter.inject.server.TwitterServer.main$(TwitterServer.scala:172)
    at ai.diffy.MainService.main(Main.scala:10)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.twitter.app.App.$anonfun$nonExitingMain$4(App.scala:364)
    at scala.Option.foreach(Option.scala:274)
    at com.twitter.app.App.nonExitingMain(App.scala:363)
    at com.twitter.app.App.nonExitingMain$(App.scala:344)
    at ai.diffy.MainService.nonExitingMain(Main.scala:10)
    at com.twitter.app.App.main(App.scala:333)
    at com.twitter.app.App.main$(App.scala:331)
    at ai.diffy.MainService.main(Main.scala:10)
    at ai.diffy.Main.main(Main.scala)

2 errors
    at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:470)
    at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:184)
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
    at com.google.inject.Guice.createInjector(Guice.java:99)
    at com.google.inject.Guice.createInjector(Guice.java:84)
    at com.twitter.inject.app.internal.InstalledModules$.create(InstalledModules.scala:38)
    at com.twitter.inject.app.App.loadModules(App.scala:146)
    at com.twitter.inject.app.App.loadModules$(App.scala:141)
    at ai.diffy.MainService.loadModules(Main.scala:10)
    at com.twitter.inject.app.App.main(App.scala:55)
    at com.twitter.inject.app.App.main$(App.scala:54)
    at com.twitter.inject.server.TwitterServer.main(TwitterServer.scala:173)
    at com.twitter.inject.server.TwitterServer.main$(TwitterServer.scala:172)
    at ai.diffy.MainService.main(Main.scala:10)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.twitter.app.App.$anonfun$nonExitingMain$4(App.scala:364)
    at scala.Option.foreach(Option.scala:274)
    at com.twitter.app.App.nonExitingMain(App.scala:363)
    at com.twitter.app.App.nonExitingMain$(App.scala:344)
    at ai.diffy.MainService.nonExitingMain(Main.scala:10)
    at com.twitter.app.App.main(App.scala:333)
    at com.twitter.app.App.main$(App.scala:331)
    at ai.diffy.MainService.main(Main.scala:10)
    at ai.diffy.Main.main(Main.scala)
Exception thrown in main on startup
puneetkhanduri commented 4 years ago

@rjw245 : It appears you may not be setting the 'summary.email' flag as shown in our quickstart here.

vibhor995 commented 4 years ago

hi @puneetkhanduri, for successfull ./sbt assembly run , i am unable to find ./target/scala-2.12/diffy-server.jar location.