设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6173|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 A6 Z7 r! z$ K" A8 R
* S) e7 `1 p# l6 V% f" _7 h9 J0 U( b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 A. n4 }0 Q! S" U+ c# N* Y- `: c3 o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* v& v0 O' u8 \0 Uswarm.SignatureNotFoundException
- D/ D, d: x9 Y3 s) w9 y2 M: ]. u        at swarm.Selector.<init>(Selector.java:76)
, X9 e! L+ Z+ p        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ x  K9 _) n1 O
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ ]  W% q5 ^. p7 j) w4 U0 M/ c

# y7 e1 [0 D; B2 d
' a# J5 _' e) b3 ~/ `( zimport swarm.objectbase.SwarmImpl;
% H0 J% |4 b, R9 X# @4 Himport swarm.objectbase.Swarm;
4 g7 \' n! y- `  z% ^% Simport swarm.activity.ScheduleImpl;
1 Q; T5 N! @( t( j3 Z6 s7 A* ^# Bimport swarm.activity.Activity;
' z  I) }  k2 T  i8 J  `2 ^# e5 I" Uimport swarm.activity.ActionGroupImpl;2 w: \" m9 Q: \8 ?; N* ~$ B- P
import swarm.collections.ListImpl;. \6 A: d& K, J: B! r+ @
import swarm.defobj.Zone; ; K; N9 v5 d2 f5 @1 @2 A  ~! J
import swarm.Globals;- J& `; i# o0 `; ~) J; f. [
import swarm.Selector;
- W0 m/ D& k$ A3 O% @6 Nimport swarm.activity.ActionGroup; 9 l$ U/ x: p& ]) u. f" O" {( f
class Agent {
& [. D( j2 o; ~* ^        char id;
* \; l+ W; d& k$ X
& y2 h; [' P% c( ^        Agent(char id) {
0 ^  r/ Z) f8 {3 R3 N                this.id = id;
& z2 V0 F6 T7 x. V2 |8 L, p6 u7 U        }& ^( t: r4 E$ l0 J* \
4 V7 ~/ V" i  c' b
        public void agentStep() {
4 p1 Q8 Q: R$ N" m) E                System.out.println(id + ":" + Globals.env.getCurrentTime());, b- G7 Y% }  `  }  ~
        }
# }# L& c) k* t}
9 T( G! p/ [- ~0 X$ S. u
5 g& m6 i7 F3 Q  l2 Ppublic class ActionGroupDemo extends SwarmImpl {9 z* Z6 c7 k: e; B; F( S7 y
        ScheduleImpl schedule;  U* ~( t. s4 I8 k! u+ p* h) n4 k
        ActionGroupImpl actionGroup;
& n% E( f' `, G; U5 T5 j% a        ListImpl list;
+ I9 f, f) |3 C        char Id = 'a';
4 f9 x9 J7 v# O% [( m% B( D6 _8 j- \7 v: U0 H* `0 k
        ActionGroupDemo(Zone aZone) {
6 Q' J0 e+ t; r) {                super(aZone);/ r" e) ^# @6 O' P: t8 j
                list = new ListImpl(aZone);
0 \' U1 [. W2 t- b  R' |* D                swarmSetp();
' `# `$ h( P) r0 K9 V8 h6 H                actionGroup = new ActionGroupImpl(aZone);5 X' V, P$ [6 E+ \
                schedule = new ScheduleImpl(aZone);- P, w8 x$ L, t
                try {
( b1 P" j( ]3 h0 n                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( l7 R, h; ]) N4 I& d% B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 Z  B3 n  ]5 y4 c+ W1 T
                        $ G# y: D% N/ d$ M4 z
                        actionGroup.createActionForEach$message(list, agentSel);: \4 ]" H4 j/ f! d1 \0 l
                        actionGroup.createActionTo$message(this, swarmSel);
0 U" S  o1 \6 f3 D( y% m5 {                        schedule.at$createAction(0, actionGroup);
' |; T" Z; W3 D7 Q                        schedule.at$createAction(1, actionGroup);
1 ~5 v! k. s4 d* m6 B; g* p                        schedule.at$createAction(2, actionGroup);
" x9 f' e4 v5 F5 K/ c2 x" R4 ?
4 N3 G6 {& v% {8 ?                } catch (Exception e) {
$ A2 J3 y0 H9 ^) V                        e.printStackTrace(System.err);
4 A( C. S5 E' r8 I; K2 o; P                        //System.out.println(e);
0 c0 [( y0 U- o/ A, J                        System.exit(1);; e: B- m+ x! H$ V9 P
                }
4 |! C' ]2 _/ X% F+ x+ v" {- W2 V  J; |  k) Q7 g5 C

. r  x$ Q. [+ K8 O; o+ ^2 T        }$ o" Q; |( f" _1 o3 h1 z4 c
( T( _) f# x# m
        private void swarmSetp() {/ {/ m) f/ N, ]: `3 a! w. f
                list.addLast(new Agent(Id));, t+ T, u2 N; L! E- C
                Id++;  ^1 u; a8 F: k0 v( o
        }$ E3 v# {/ Z) X1 ~0 J4 r; \
' q1 j! |8 h1 c: K' \* d
        public Activity activateIn(Swarm context) {
/ J5 j3 r5 W5 F& F; |. O4 k% U                super.activateIn(context);
" s' a7 F8 X8 o% u% v) y- ?5 N                schedule.activateIn(this);
2 I0 n9 P1 f  v0 |+ g* k8 @                return getActivity();
( v$ }! e9 n+ h0 ]        }
8 ?9 J4 Y. E5 U' x6 x+ J' D
, Z; T  f- `- T  i& q: X5 n        public static void main(String[] args) {
) Y" g# P4 i) S6 }* o; l* ~# Q( p$ `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 v* |6 k& K9 Q2 p; k3 C0 `" l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 D: Z" `3 U( V  F                swarms.buildObjects();
$ f# Y/ {3 N+ k  Y6 K! M* V                swarms.buildActions();- P3 K/ e8 x. n
                swarms.activateIn(null).run();
* L1 J1 c+ e& c. Y( n) N' C6 c        }
/ H6 f3 \% \) [% ]2 s+ t) t' Z$ `# ?- Q$ G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-1-20 09:30 , Processed in 0.015331 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表