关闭 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
。
或者在自己的文件中定义它是显而易见的选择;但是你说你做不到。
我有一个问题: 我必须为我的研究创建一个项目。在要求中我有一个信息,整个项目应该在两个文件 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
。
或者在自己的文件中定义它是显而易见的选择;但是你说你做不到。