我有一个可运行的 jar 文件,我从
java -jar myFile.jar
Run Code Online (Sandbox Code Playgroud)
在 Windows 上。一位客户表示,他在启动应用程序时遇到了问题(这是包装成可执行文件的 jar 文件)。我怀疑它与管理员权限有关。所以我想在没有管理员权限的情况下运行我的 jar 文件以进行测试(因为这样我得到了System.out/err这对调试有很大帮助)。
我意识到我可以创建一个非管理员帐户并在那里启动应用程序,但我想知道是否有一种方法可以专门从管理员帐户启动一个 jar 以便它在安慰。或者:有没有办法从管理员帐户打开没有管理员权限的控制台?
客户使用Windows XP,所以这是我可以使用的操作系统。(尽管如果您对 Win7 等较新的 Windows 有所了解,如果您也告诉我,我将不胜感激)。
编辑:澄清:我正在寻找这样的东西
java -jar -runWithoutAdminRights myFile.jar
Run Code Online (Sandbox Code Playgroud)
或者
start /runWithoutAdminRights java -jar myFile.jar
Run Code Online (Sandbox Code Playgroud)
或者从管理员帐户打开非管理员控制台的方法。
我有这个代码形式的SCJP书:
1. class Mammal {
2. String name = "furry ";
3. String makeNoise() { return "generic noise"; }
4. }
5.
6. class Zebra extends Mammal {
7. String name = "stripes ";
8. String makeNoise() { return "bray"; }
9. }
10.
11. public class ZooKeeper {
12. public static void main(String[] args) {
13. new ZooKeeper().go();
14. }
15.
16. void go() {
17. Mammal m = new Zebra();
18. System.out.println(m.name + m.makeNoise());
19. }
20. } …Run Code Online (Sandbox Code Playgroud) 首先,我不是要求代码...我刚刚到了我不知道如何进步的地步......有人可以向我解释如何开始这个刽子手的步骤吗?我已经有了一系列按钮:
String b[]={"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
for(i = 0; i < buttons.length; i++) {
buttons[i] = new JButton(b[i]);
panel.add(buttons[i]);
}
Run Code Online (Sandbox Code Playgroud)
然后,我试图隐藏的这个词来自一个列表:
public String readWord() {
try {
BufferedReader reader = new BufferedReader(new FileReader("Words.txt"));
String line = reader.readLine();
List<String> words = new ArrayList<String>();
while(line != null) {
String[] wordsLine = line.split(" ");
boolean addAll = words.addAll(Arrays.asList(wordsLine));
line = reader.readLine();
}
Random rand = new Random(System.currentTimeMillis());
String randomWord = words.get(rand.nextInt(words.size()));
return randomWord;
} catch (Exception e) {
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
现在有人可以指出我正确的方向用" - "隐藏单词.当用户点击一个正确的按钮时,该字母必须出现......
如果它不是那么清楚,我道歉.
为什么Eclipse告诉我
int a = 4;
if (a) {
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
是错的,还是Cannot convert from integer to boolean?
我习惯于在C,C++中编写类似的东西,并认为Java也可以.这是Eclipse的工作原理吗?或者Java是如何工作的?有没有解决方法?
我最近进入了Java.我有动态语言的背景,我终于搞清楚为什么人们会抱怨Java的冗长.是否有任何类库来解决这个问题?我宁愿输入类似的东西,String text = someClass.stdin()而不是用Java输入用户输入所需的8行.
static void nodes(String node) {
int node_location;
int i;
int update_i=1;
node_location=((node.indexOf("(("))-2);
ArrayList<String> node_array = new ArrayList<String>();
for( i=1;i<node_location;i++) {
if(node.charAt(i)!=',') {
if(node.charAt(i+1)==',' || node.charAt(i+1)==')')
node_array.add(Character.toString(node.charAt(i)));
else {
for(int a=i+2;a<=node.indexOf("),");a++) {
update_i++;
if(node.charAt(a)==',') {
node_array.add(node.substring(i, a));
break;
}
}
i=update_i;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
该方法应该采用格式的字符串(1,2,3,4,5)并将数字(作为字符串)存储在arraylist中.问题是当我有(1,2,333,4,5)例如我的if语句应该转到else并检查数字在我们到达逗号之前有多少个位置.然后我把它的子串并存储到我的arraylist中.问题是,由于某些原因,当我们到达else语句时,我的位置不会更新(我们必须增加比for循环更多的东西,因为数字不止一个.但是当我运行它时,我的程序打印出以下内容:
1
2
333
333
33
3
4
5
java ×5
admin ×1
class ×1
console ×1
eclipse ×1
inheritance ×1
jar ×1
libraries ×1
polymorphism ×1
windows ×1