6
respostas

Não consigo iniciar o run

Na hora que inicio o projeto com o Run e abro o localhost:9000 apresenta inúmeros erros de compilação, como resolve isso?

http://imgur.com/a/H0gxH

6 respostas

A imagem está bem pequena... pode colar o erro aqui no fórum para a gente tentar ajudar? o mesmo erro aparece no console do play.

--- (Running the application, auto-reloading is enabled) ---

[info] p.c.s.NettyServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

(Server started, use Ctrl+D to stop and go back to the console...)

[info] Compiling 6 Scala sources and 10 Java sources to /home/keven/Downloads/new-project/target/scala-2.11/classes... [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:47: ')' expected [error] return getFutureMessage(1, TimeUnit.SECONDS).thenApplyAsync(Results::ok, exec); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:47: illegal start of expression [error] return getFutureMessage(1, TimeUnit.SECONDS).thenApplyAsync(Results::ok, exec); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:47: ';' expected [error] return getFutureMessage(1, TimeUnit.SECONDS).thenApplyAsync(Results::ok, exec); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:51: illegal start of type [error] CompletableFuture future = new CompletableFuture<>(); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:54: illegal start of expression [error] () -> future.complete("Hi!"), [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:54: illegal start of expression [error] () -> future.complete("Hi!"), [error] ^ [error] /home/keven/Downloads/new-project/app/filters/ExampleFilter.java:40: illegal start of expression [error] result -> result.withHeader("X-ExampleFilter", "foo"), [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: illegal start of expression [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: illegal start of expression [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: illegal start of expression [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: ';' expected [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:47: illegal start of type [error] }); [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:50: class, interface, or enum expected [error] } [error] ^ [error] (compile:compileIncremental) javac returned nonzero exit code [info] Compiling 6 Scala sources and 10 Java sources to /home/keven/Downloads/new-project/target/scala-2.11/classes... [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:47: ')' expected [error] return getFutureMessage(1, TimeUnit.SECONDS).thenApplyAsync(Results::ok, exec); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:47: illegal start of expression [error] return getFutureMessage(1, TimeUnit.SECONDS).thenApplyAsync(Results::ok, exec); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:47: ';' expected [error] return getFutureMessage(1, TimeUnit.SECONDS).thenApplyAsync(Results::ok, exec); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:51: illegal start of type [error] CompletableFuture future = new CompletableFuture<>(); [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:54: illegal start of expression [error] () -> future.complete("Hi!"), [error] ^ [error] /home/keven/Downloads/new-project/app/controllers/AsyncController.java:54: illegal start of expression [error] () -> future.complete("Hi!"), [error] ^ [error] /home/keven/Downloads/new-project/app/filters/ExampleFilter.java:40: illegal start of expression [error] result -> result.withHeader("X-ExampleFilter", "foo"), [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: illegal start of expression [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: illegal start of expression [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: illegal start of expression [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:42: ';' expected [error] appLifecycle.addStopHook(() -> { [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:47: illegal start of type [error] }); [error] ^ [error] /home/keven/Downloads/new-project/app/services/ApplicationTimer.java:50: class, interface, or enum expected [error] } [error] ^ [error] (compile:compileIncremental) javac returned nonzero exit code [error] application -

! @73bhpn6i0 - Internal server error, for (GET) [/] ->

play.sbt.PlayExceptions$CompilationException: Compilation error[ ')' expected] at play.sbt.PlayExceptions$CompilationException$.apply(PlayExceptions.scala:27) at play.sbt.PlayExceptions$CompilationException$.apply(PlayExceptions.scala:27) at scala.Option.map(Option.scala:145) at play.sbt.run.PlayReload$$anonfun$taskFailureHandler$1.apply(PlayReload.scala:49) at play.sbt.run.PlayReload$$anonfun$taskFailureHandler$1.apply(PlayReload.scala:44) at scala.Option.map(Option.scala:145) at play.sbt.run.PlayReload$.taskFailureHandler(PlayReload.scala:44) at play.sbt.run.PlayReload$.compileFailure(PlayReload.scala:40) at play.sbt.run.PlayReload$$anonfun$compile$1.apply(PlayReload.scala:17) at play.sbt.run.PlayReload$$anonfun$compile$1.apply(PlayReload.scala:17)

Eu consegui resolver esse erro atualizando a versão do Java, porém agora não consigo me conectar ao banco

Configuration error
Cannot connect to database [default]
In /home/keven/Downloads/produtos-api/target/scala-2.11/classes/application.conf:351
347
348        # Default database configuration using MySQL database engine
349        # Connect to playdb as playdbuser
350        default.driver=com.mysql.jdbc.Driver
351        default.url="jdbc:mysql://localhost:3306/projetos_api"
352        default.username=root
353        default.password=""
354

Qual erro apresenta na conexão com o banco ?

O error é na linha 351, porém aqui tá tudo normal... Eu até importei o projeto da aula do mesmo jeito que o instrutor fez e é o mesmo problema.

Ali eu coloquei porta 3306 mas já tentei sem a porta e nada.

Eu sinto que ele não consegue mesmo se conectar ao banco de dados, lá em cima tem assim:

Cannot connect to database [default]

Eu até to fazendo um teste aqui pelo terminal eu não consigo entrar no banco de dados normalmente;

Usando; mysql -uroot -p

Da esse erro:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Eu só consigo entrar no banco de dados como super usuário (sudo su)

E eu sinto que talvez por isso esteja impedindo a conexão com o banco.

Uma outra observação é que eu fiz o mesmo processo usando o ubuntu 16.04 nativamente aqui no meu pc com dual boot e é onde estou enfrentando esses problemas.

E fiz através da máquina virtual usando kali linux, fiz os mesmos procedimentos e lá funcionou sem erro algum, inclusive a parte do banco de dados.

Eu poderia fazer pelo kali porém meu computador não é tão potente assim a ponto de tirar maior proveito da máquina.

O problema é com o ubuntu mesmo, com o user root, ele usa o auth_socket , que só deixa fazendo como com o comando -sudo.

Uma solução seria voce criar um outro usuário com o mesmo nome do seu system_user, faça os seguintes passos:

$ sudo mysql -u root

mysql> USE mysql;
mysql> CREATE USER '<<<nomeDoUsuarioDoSistema>>>'@'localhost' IDENTIFIED BY '';
mysql> GRANT ALL PRIVILEGES ON * . * TO '<<<nomeDoUsuarioDoSistema>>>'@'localhost';
mysql> UPDATE user SET plugin='auth_socket' WHERE User='<<<nomeDoUsuarioDoSistema>>>';
mysql> FLUSH PRIVILEGES;
mysql> exit;

Reinicie o servidor do mySQL e depois se conecte com o novo usuario criado.