{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/fbthrift/issues/72","labels_url":"https://api.github.com/repos/facebook/fbthrift/issues/72/labels{/name}","comments_url":"https://api.github.com/repos/facebook/fbthrift/issues/72/comments","events_url":"https://api.github.com/repos/facebook/fbthrift/issues/72/events","html_url":"https://github.com/facebook/fbthrift/issues/72","id":55050139,"number":72,"title":"Java compile failed. Package com.facebook.fbcode.fb303 does not exist.","user":{"login":"philippe-tr","id":2514690,"avatar_url":"https://avatars.githubusercontent.com/u/2514690?v=3","gravatar_id":"","url":"https://api.github.com/users/philippe-tr","html_url":"https://github.com/philippe-tr","followers_url":"https://api.github.com/users/philippe-tr/followers","following_url":"https://api.github.com/users/philippe-tr/following{/other_user}","gists_url":"https://api.github.com/users/philippe-tr/gists{/gist_id}","starred_url":"https://api.github.com/users/philippe-tr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philippe-tr/subscriptions","organizations_url":"https://api.github.com/users/philippe-tr/orgs","repos_url":"https://api.github.com/users/philippe-tr/repos","events_url":"https://api.github.com/users/philippe-tr/events{/privacy}","received_events_url":"https://api.github.com/users/philippe-tr/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-01-21T17:29:44Z","updated_at":"2015-01-21T21:39:29Z","closed_at":"2015-01-21T21:39:29Z","body":"On a Vagrant VM with Oracle VirtualBox as the provider, running ubuntu/trusty64 as a guest. Ran the ./deps.sh script to completion without any apparent errors.\r\n\r\nThen, ran ANT in the thrift/lib/java folder. The compilation fails with message Package com.facebook.fbcode.fb303 does not exist.\r\n\r\nThe build output:\r\n\r\nvagrant@vagrant-ubuntu-trusty-64:/vagrant/thrift/lib/java$ ant\r\nBuildfile: /vagrant/thrift/lib/java/build.xml\r\n\r\ninit:\r\n\r\nivy-init-dirs:\r\n\r\nivy-download:\r\n      [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.0.0-rc2/ivy-2.0.0-rc2.jar\r\n      [get] To: /vagrant/thrift/lib/java/build/ivy/ivy-2.0.0-rc2.jar\r\n      [get] Not modified - so not downloaded\r\n\r\nivy-probe-antlib:\r\n\r\nivy-init-antlib:\r\n\r\nresolve:\r\nNo ivy:settings found for the default reference 'ivy.instance'.  A default instance will be used\r\nno settings file found, using default...\r\n[ivy:retrieve] :: Ivy 2.0.0-rc2 - 20081028224207 :: http://ant.apache.org/ivy/ ::\r\n:: loading settings :: url = jar:file:/vagrant/thrift/lib/java/build/ivy/ivy-2.0.0-rc2.jar!/org/apache/ivy/core/settings/ivysettings.xml\r\n[ivy:retrieve] :: resolving dependencies :: jayasoft#hello-ivy;working@vagrant-ubuntu-trusty-64\r\n[ivy:retrieve]  confs: [default]\r\n[ivy:retrieve]  found org.slf4j#slf4j-api;1.5.8 in public\r\n[ivy:retrieve]  found org.slf4j#slf4j-simple;1.5.8 in public\r\n[ivy:retrieve]  found commons-lang#commons-lang;2.4 in public\r\n[ivy:retrieve] :: resolution report :: resolve 315ms :: artifacts dl 6ms\r\n        ---------------------------------------------------------------------\r\n        |                  |            modules            ||   artifacts   |\r\n        |       conf       | number| search|dwnlded|evicted|| number|dwnlded|\r\n        ---------------------------------------------------------------------\r\n        |      default     |   3   |   0   |   0   |   0   ||   3   |   0   |\r\n        ---------------------------------------------------------------------\r\n[ivy:retrieve] :: retrieving :: jayasoft#hello-ivy\r\n[ivy:retrieve]  confs: [default]\r\n[ivy:retrieve]  0 artifacts copied, 3 already retrieved (0kB/19ms)\r\n\r\ncompile:\r\n    [javac] /vagrant/thrift/lib/java/build.xml:115: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds\r\n    [javac] Compiling 95 source files to /vagrant/thrift/lib/java/build\r\n    [javac] warning: [options] bootstrap class path not set in conjunction with -source 1.5\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/DirectTProcessorEventHandler.java:15: error: package com.facebook.fbcode.fb303 does not exist\r\n    [javac] import com.facebook.fbcode.fb303.FacebookBase;\r\n    [javac]                                 ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/DirectTProcessorEventHandler.java:21: error: cannot find symbol\r\n    [javac]   protected FacebookBase handler_;\r\n    [javac]             ^\r\n    [javac]   symbol:   class FacebookBase\r\n    [javac]   location: class DirectTProcessorEventHandler\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/DirectTProcessorEventHandler.java:61: error: cannot find symbol\r\n    [javac]   public DirectTProcessorEventHandler(FacebookBase h) {\r\n    [javac]                                       ^\r\n    [javac]   symbol:   class FacebookBase\r\n    [javac]   location: class DirectTProcessorEventHandler\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/MovingAvgStat.java:13: error: package com.facebook.fbcode.fb303 does not exist\r\n    [javac] import com.facebook.fbcode.fb303.FacebookBase;\r\n    [javac]                                 ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/DirectTProcessorEventHandler.java:30: error: cannot find symbol\r\n    [javac]     TStat(FacebookBase h, String fn_name) {\r\n    [javac]           ^\r\n    [javac]   symbol:   class FacebookBase\r\n    [javac]   location: class TStat\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/MovingAvgStat.java:38: error: cannot find symbol\r\n    [javac]   protected FacebookBase handler_;\r\n    [javac]             ^\r\n    [javac]   symbol:   class FacebookBase\r\n    [javac]   location: class MovingAvgStat\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/MovingAvgStat.java:140: error: cannot find symbol\r\n    [javac]   public MovingAvgStat(FacebookBase h, String fName, MovingAvgStat b) {\r\n    [javac]                        ^\r\n    [javac]   symbol:   class FacebookBase\r\n    [javac]   location: class MovingAvgStat\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:3: error: package org.junit does not exist\r\n    [javac] import static org.junit.Assert.*;\r\n    [javac]                        ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:10: error: package org.junit does not exist\r\n    [javac] import org.junit.BeforeClass;\r\n    [javac]                 ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:11: error: package org.junit does not exist\r\n    [javac] import org.junit.Test;\r\n    [javac]                 ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:13: error: package com.facebook.fbcode.fb303 does not exist\r\n    [javac] import com.facebook.fbcode.fb303.fb_status;\r\n    [javac]                                 ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:22: error: package JavaSimpleService does not exist\r\n    [javac]   private static JavaSimpleService.Client newClient() throws Exception {\r\n    [javac]                                   ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/SimpleServiceHandler.java:8: error: package com.facebook.fbcode.fb303 does not exist\r\n    [javac]   extends com.facebook.fbcode.fb303.FacebookBase\r\n    [javac]                                    ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/SimpleServiceHandler.java:9: error: package JavaSimpleService does not exist\r\n    [javac]   implements JavaSimpleService.Iface {\r\n    [javac]                               ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/SimpleServiceHandler.java:15: error: cannot find symbol\r\n    [javac]   public String simple(SimpleRequest r) throws TException {\r\n    [javac]                        ^\r\n    [javac]   symbol:   class SimpleRequest\r\n    [javac]   location: class SimpleServiceHandler\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/TestServer.java:15: error: package com.facebook.fbcode.fb303 does not exist\r\n    [javac] import com.facebook.fbcode.fb303.*;\r\n    [javac] ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/Tester.java:32: error: package JavaSimpleService does not exist\r\n    [javac]   static JavaSimpleService.Client getClient(String host, int port) {\r\n    [javac]                           ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/transport/THeaderTransport.java:31: error: package org.iq80.snappy does not exist\r\n    [javac] import org.iq80.snappy.Snappy;\r\n    [javac]                       ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/transport/THeaderTransport.java:32: error: package org.iq80.snappy does not exist\r\n    [javac] import org.iq80.snappy.CorruptionException;\r\n    [javac]                       ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:10: error: package javax.servlet does not exist\r\n    [javac] import javax.servlet.ServletException;\r\n    [javac]                     ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:11: error: package javax.servlet.http does not exist\r\n    [javac] import javax.servlet.http.HttpServlet;\r\n    [javac]                          ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:12: error: package javax.servlet.http does not exist\r\n    [javac] import javax.servlet.http.HttpServletRequest;\r\n    [javac]                          ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:13: error: package javax.servlet.http does not exist\r\n    [javac] import javax.servlet.http.HttpServletResponse;\r\n    [javac]                          ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:26: error: cannot find symbol\r\n    [javac] public class TServlet extends HttpServlet {\r\n    [javac]                               ^\r\n    [javac]   symbol: class HttpServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:60: error: cannot find symbol\r\n    [javac]   protected void doPost(HttpServletRequest request, HttpServletResponse response)\r\n    [javac]                         ^\r\n    [javac]   symbol:   class HttpServletRequest\r\n    [javac]   location: class TServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:60: error: cannot find symbol\r\n    [javac]   protected void doPost(HttpServletRequest request, HttpServletResponse response)\r\n    [javac]                                                     ^\r\n    [javac]   symbol:   class HttpServletResponse\r\n    [javac]   location: class TServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:61: error: cannot find symbol\r\n    [javac]       throws ServletException, IOException {\r\n    [javac]              ^\r\n    [javac]   symbol:   class ServletException\r\n    [javac]   location: class TServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:97: error: cannot find symbol\r\n    [javac]   protected void doGet(HttpServletRequest request, HttpServletResponse response)\r\n    [javac]                        ^\r\n    [javac]   symbol:   class HttpServletRequest\r\n    [javac]   location: class TServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:97: error: cannot find symbol\r\n    [javac]   protected void doGet(HttpServletRequest request, HttpServletResponse response)\r\n    [javac]                                                    ^\r\n    [javac]   symbol:   class HttpServletResponse\r\n    [javac]   location: class TServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:98: error: cannot find symbol\r\n    [javac]       throws ServletException, IOException {\r\n    [javac]              ^\r\n    [javac]   symbol:   class ServletException\r\n    [javac]   location: class TServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:28: error: cannot find symbol\r\n    [javac]   @BeforeClass\r\n    [javac]    ^\r\n    [javac]   symbol:   class BeforeClass\r\n    [javac]   location: class JUnitTestHsHaServer\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:55: error: cannot find symbol\r\n    [javac]   @Test\r\n    [javac]    ^\r\n    [javac]   symbol:   class Test\r\n    [javac]   location: class JUnitTestHsHaServer\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:62: error: cannot find symbol\r\n    [javac]   @Test\r\n    [javac]    ^\r\n    [javac]   symbol:   class Test\r\n    [javac]   location: class JUnitTestHsHaServer\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:25: error: package JavaSimpleService does not exist\r\n    [javac]     return new JavaSimpleService.Client(new TBinaryProtocol(trans));\r\n    [javac]                                 ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:30: error: package JavaSimpleService does not exist\r\n    [javac]     JavaSimpleService.Processor proc =\r\n    [javac]                      ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:31: error: package JavaSimpleService does not exist\r\n    [javac]         new JavaSimpleService.Processor(new SimpleServiceHandler());\r\n    [javac]                              ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:43: error: cannot find symbol\r\n    [javac]         if (newClient().getStatus() == fb_status.ALIVE) {\r\n    [javac]                                        ^\r\n    [javac]   symbol:   variable fb_status\r\n    [javac]   location: class JUnitTestHsHaServer\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/JUnitTestHsHaServer.java:57: error: cannot find symbol\r\n    [javac]     assertEquals(fb_status.ALIVE, newClient().getStatus());\r\n    [javac]                  ^\r\n    [javac]   symbol:   variable fb_status\r\n    [javac]   location: class JUnitTestHsHaServer\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/SimpleServiceHandler.java:17: error: cannot find symbol\r\n    [javac]     if (this.hashCode() == System.currentTimeMillis()) {\r\n    [javac]             ^\r\n    [javac]   symbol: method hashCode()\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/SimpleServiceHandler.java:33: error: package com.facebook.fbcode.fb303 does not exist\r\n    [javac]     return com.facebook.fbcode.fb303.fb_status.ALIVE;\r\n    [javac]                                     ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/TestHsHaServer.java:32: error: package JavaSimpleService does not exist\r\n    [javac]     JavaSimpleService.Processor processor =\r\n    [javac]                      ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/TestHsHaServer.java:33: error: package JavaSimpleService does not exist\r\n    [javac]       new JavaSimpleService.Processor(handler);\r\n    [javac]                            ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/TestServer.java:27: error: package JavaSimpleService does not exist\r\n    [javac]     JavaSimpleService.Processor processor =\r\n    [javac]                      ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/TestServer.java:28: error: package JavaSimpleService does not exist\r\n    [javac]       new JavaSimpleService.Processor(handler);\r\n    [javac]                            ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/TestServer.java:32: error: cannot find symbol\r\n    [javac]         new DirectTProcessorEventHandler((FacebookBase)handler));\r\n    [javac]                                           ^\r\n    [javac]   symbol:   class FacebookBase\r\n    [javac]   location: class TestServer\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/Tester.java:41: error: package JavaSimpleService does not exist\r\n    [javac]         JavaSimpleService.Client cli = new JavaSimpleService.Client(proto);\r\n    [javac]                          ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/Tester.java:41: error: package JavaSimpleService does not exist\r\n    [javac]         JavaSimpleService.Client cli = new JavaSimpleService.Client(proto);\r\n    [javac]                                                             ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/Tester.java:61: error: package JavaSimpleService does not exist\r\n    [javac]         JavaSimpleService.Client cli = getClient(host_, port_);\r\n    [javac]                          ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/Tester.java:96: error: cannot find symbol\r\n    [javac]       SimpleRequest r = new SimpleRequest();\r\n    [javac]       ^\r\n    [javac]   symbol:   class SimpleRequest\r\n    [javac]   location: class MultiTestThread\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/Tester.java:96: error: cannot find symbol\r\n    [javac]       SimpleRequest r = new SimpleRequest();\r\n    [javac]                             ^\r\n    [javac]   symbol:   class SimpleRequest\r\n    [javac]   location: class MultiTestThread\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/direct_server/tests/Tester.java:101: error: package JavaSimpleService does not exist\r\n    [javac]         JavaSimpleService.Client cli = getClient(host_, port_);\r\n    [javac]                          ^\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/transport/THeaderTransport.java:530: error: cannot find symbol\r\n    [javac]           Snappy.getUncompressedLength(\r\n    [javac]           ^\r\n    [javac]   symbol:   variable Snappy\r\n    [javac]   location: class THeaderTransport\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/transport/THeaderTransport.java:533: error: cannot find symbol\r\n    [javac]         int length = Snappy.uncompress(\r\n    [javac]                      ^\r\n    [javac]   symbol:   variable Snappy\r\n    [javac]   location: class THeaderTransport\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/transport/THeaderTransport.java:540: error: cannot find symbol\r\n    [javac]       } catch (CorruptionException e) {\r\n    [javac]                ^\r\n    [javac]   symbol:   class CorruptionException\r\n    [javac]   location: class THeaderTransport\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/transport/THeaderTransport.java:568: error: cannot find symbol\r\n    [javac]       byte[] outputBuffer = new byte[Snappy.maxCompressedLength(data.limit())];\r\n    [javac]                                      ^\r\n    [javac]   symbol:   variable Snappy\r\n    [javac]   location: class THeaderTransport\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/transport/THeaderTransport.java:569: error: cannot find symbol\r\n    [javac]       int length = Snappy.compress(\r\n    [javac]                    ^\r\n    [javac]   symbol:   variable Snappy\r\n    [javac]   location: class THeaderTransport\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:89: error: cannot find symbol\r\n    [javac]       throw new ServletException(te);\r\n    [javac]                 ^\r\n    [javac]   symbol:   class ServletException\r\n    [javac]   location: class TServlet\r\n    [javac] /vagrant/thrift/lib/java/src/com/facebook/thrift/server/TServlet.java:59: error: method does not override or implement a method from a supertype\r\n    [javac]   @Override\r\n    [javac]   ^\r\n    [javac] 58 errors\r\n    [javac] 1 warning\r\n\r\nBUILD FAILED\r\n/vagrant/thrift/lib/java/build.xml:115: Compile failed; see the compiler error output for details.\r\n\r\nTotal time: 12 seconds\r\n"},"comment":{"url":"https://api.github.com/repos/facebook/fbthrift/issues/comments/70927028","html_url":"https://github.com/facebook/fbthrift/issues/72#issuecomment-70927028","issue_url":"https://api.github.com/repos/facebook/fbthrift/issues/72","id":70927028,"user":{"login":"alandau","id":4314297,"avatar_url":"https://avatars.githubusercontent.com/u/4314297?v=3","gravatar_id":"","url":"https://api.github.com/users/alandau","html_url":"https://github.com/alandau","followers_url":"https://api.github.com/users/alandau/followers","following_url":"https://api.github.com/users/alandau/following{/other_user}","gists_url":"https://api.github.com/users/alandau/gists{/gist_id}","starred_url":"https://api.github.com/users/alandau/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alandau/subscriptions","organizations_url":"https://api.github.com/users/alandau/orgs","repos_url":"https://api.github.com/users/alandau/repos","events_url":"https://api.github.com/users/alandau/events{/privacy}","received_events_url":"https://api.github.com/users/alandau/received_events","type":"User","site_admin":false},"created_at":"2015-01-21T21:39:29Z","updated_at":"2015-01-21T21:39:29Z","body":"Java builds were not really tested in fbthrift. The supported version of Java for fbthrift is https://github.com/facebook/nifty/ and https://github.com/facebook/swift (or the original Apache Thrift).\r\nAlternatively, if a small patch can fix the error, I'll be glad to accept it."}}