【问题标题】:java, why these error? --maven-compiler-plugin:3.7.0java,为什么会出现这些错误? --maven-compiler-plugin:3.7.0
【发布时间】:2018-08-29 05:12:39
【问题描述】:

我正在浏览以下 opendaylight 指南: https://docs.opendaylight.org/en/stable-oxygen/developer-guide/developing-apps-on-the-opendaylight-controller.html#

编译时出现错误:

[ERROR] ...Odl-testProvider.java:[14,17] '{' expected
[ERROR] ...Odl-testProvider.java:[21,15] <identifier> expected
[ERROR] ...Odl-testProvider.java:[21,16] invalid method declaration; return type required

Odl-testProvider.java:

/*
* Copyright © 2017 Copyright(c) Yoyodyne, Inc. and others.  All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
package org.opendaylight.solaroi.impl;

import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Odl-testProvider //line 14
{

private static final Logger LOG = LoggerFactory.getLogger(Odl-testProvider.class);

private final DataBroker dataBroker;

public Odl-testProvider(final DataBroker dataBroker) //line 21
{
    this.dataBroker = dataBroker;
}

/**
 * Method called when the blueprint container is created.
 */
public void init() 
{
    LOG.info("Odl-testProvider Session Initiated");
}

/**
 * Method called when the blueprint container is destroyed.
 */
public void close() 
{
    LOG.info("Odl-testProvider Closed");
}
}

编译器信息:

目标:maven-compiler-plugin:3.7.0:compile(default-compile)
编译器'javac',源 = 1.8,目标 = 1.8

【问题讨论】:

  • "Odl-testProvider" 不是有效标识符。它是 2 个带有减号的标识符 ... 这会使任何编译器感到困惑。简而言之:这是由于 typo 造成的语法错误。
  • 确实,编译错误与maven编译插件无关。

标签: java maven javac opendaylight


【解决方案1】:

您必须查看 Java 类名的允许字符。 - 是不允许的。看这里:https://docs.oracle.com/javase/specs/jls/se7/html/jls-3.html#jls-3.8

【讨论】:

  • 您似乎使用的是 OpenDaylight 的 Oxygen 版本。只是想让您知道您可能想使用我们刚刚发布的最新版本 Fluorine;请参阅docs.opendaylight.org/en/stable-fluorine/developer-guide/…,但请注意archetypeGroupIdorg.opendaylight.controller 更改为org.opendaylight.archetypes
猜你喜欢
  • 2014-12-09
  • 2019-09-17
  • 2019-02-20
  • 2017-11-09
  • 2021-02-07
  • 1970-01-01
  • 2020-01-01
  • 1970-01-01
  • 2018-09-15
相关资源
最近更新 更多