关闭 javac 警告

turn off javac warnings

我有一个问题: 我必须为我的研究创建一个项目。在要求中我有一个信息,整个项目应该在两个文件 A.java 和 B.java.

中创建

项目的问题很复杂,所以我创建了一些有用的 class 称为 e.x。我的课。我把这个 class 放在 A.java 里面 - 我不能使用另一个文件。

现在我的 A.java 看起来像这样:

public class A {
 // some logic
}

final class MyClass implements Comparable<MyClass> {
    //some logic    
}

在 B.java 中,我正在使用 MyClass 的对象并且一切正常。

问题出在项目的第二个需求上。 自动编译 - 在我将我的项目发送到我的大学之后 - 开始这样的过程:

javac –Xlint B.java A.java

编译成功但我有一些警告:

B.java:17: warning: auxiliary class MyClass in A.java should not be accessed from outside its own source file
    private MyClass variable;

第三个要求是,如果你有任何警告或错误,你的项目将不会被评估。因此,如果出现警告,我的项目将失败。

我知道在一个文件中存储两个 classes 是非常愚蠢的,但这是大学 - 这里的一切都是愚蠢的...

所以 - 有什么解决方案可以在使用 javac 编译期间关闭警告吗? 我试过这个:

@SuppressWarnings("all")
final class MyClass implements Comparable<MyClass> {

但它不起作用 - 我仍然收到警告...

有什么想法吗? :)

MyClass放入A:

public class A {
 // some logic

  static final class MyClass implements Comparable<MyClass> {
      //some logic    
  }
}

并在另一个文件中将其称为 A.MyClass

或导入它(假设 A 不在默认包中),并将其称为 MyClass

或者在自己的文件中定义它是显而易见的选择;但是你说你做不到。