设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5770|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 I4 p- T2 O8 Y* K, R4 P7 X& ^5 L  Q" b$ j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' n3 u7 r- e' p) M/ Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 a0 a5 [1 p, N1 g. G& s
swarm.SignatureNotFoundException
% Y: h9 @- V$ N: l- A0 q0 _        at swarm.Selector.<init>(Selector.java:76). ?+ z4 Y( t* |7 e5 Q1 \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 a( j8 e1 E: D. {: o! p* Q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ F3 J' l1 W8 e: J0 j

% P0 h( M, v5 a' N# ?
7 b5 K( K2 m( Z' f: d1 G. r" _import swarm.objectbase.SwarmImpl;
; ?# P" ]8 G0 o0 bimport swarm.objectbase.Swarm;1 x0 k3 p0 ^9 X1 D
import swarm.activity.ScheduleImpl;
% ~9 Q8 M8 e  n3 c1 |9 Limport swarm.activity.Activity;- H& [5 l  w) H0 e
import swarm.activity.ActionGroupImpl;
$ ]5 Q1 X7 t- ?* c) s. Fimport swarm.collections.ListImpl;
  _% I. C0 n( P1 K) F( d2 Vimport swarm.defobj.Zone; ' y; M* f. y% p  q" Y: Z4 U+ T2 c
import swarm.Globals;+ J8 B& f1 L# U
import swarm.Selector;
, |( h2 {5 g$ D% }* `: Iimport swarm.activity.ActionGroup; 1 c5 V0 y! }* G$ G
class Agent {9 o6 g' Z, O6 a5 ~
        char id;% c, Q: _1 |3 F! ], w5 `
4 K: y7 x# N; i5 k; `
        Agent(char id) {; S3 i3 |% [# d$ A9 n9 i
                this.id = id;
# A5 p) j; L2 a" Y: x. T' U1 }  _        }! _+ F; L" [; c

- p$ v% v9 Y" |* W        public void agentStep() {, e* M! A/ ?/ f8 Q/ {2 z1 c: P; k
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. L' f1 G( o) _: U, Y5 `/ Q  f        }
2 K& H% L0 B& C8 G) s}7 i  ^6 F8 [9 N! D$ q7 k+ ~0 ^" [
9 B( [/ A' X/ o6 f
public class ActionGroupDemo extends SwarmImpl {; T8 d3 \. [$ C9 Z# {" ^
        ScheduleImpl schedule;
9 |  F* S# C+ m8 }) x9 T8 `% r        ActionGroupImpl actionGroup;
9 C3 z3 l# A& a, I2 ]        ListImpl list;
9 f% ]9 t) F1 p; I5 e  B        char Id = 'a';
$ Y- A! L' }/ \
' V) o$ M6 c  D9 m/ ]        ActionGroupDemo(Zone aZone) {8 e. U9 m* T, j4 B3 j9 \) V
                super(aZone);
' x4 u2 r* d4 G' U' L) B( |! \                list = new ListImpl(aZone);7 H0 r1 s) _( d9 J$ R! }
                swarmSetp();$ a  l6 i, m! i0 x- Q3 E
                actionGroup = new ActionGroupImpl(aZone);# g& \) v( E* ^9 Z
                schedule = new ScheduleImpl(aZone);, o" D! v+ g1 m7 `  v
                try {
1 h- E- u8 H3 ^$ ]! n! ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 i- `+ U, {2 Q. K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 P* v  B9 Q9 h, `1 x                        / i' E1 p( h* I- ]
                        actionGroup.createActionForEach$message(list, agentSel);& o& t. s% S9 |
                        actionGroup.createActionTo$message(this, swarmSel);
* X  Z) z( i6 X$ h. S                        schedule.at$createAction(0, actionGroup);
5 i8 f. k: U  }2 E1 y+ |: ]  [2 f( U                        schedule.at$createAction(1, actionGroup);
3 O7 _! ?& S9 U! w0 A" N                        schedule.at$createAction(2, actionGroup);- D6 ^" F4 I5 Z3 k" V

- o5 E: j8 U5 r; \- o* Q                } catch (Exception e) {
6 i, R7 n7 w2 }( R# n1 ?                        e.printStackTrace(System.err);4 i. }# ]7 g3 c: ^$ N
                        //System.out.println(e);
# s9 z( U8 u+ D7 R& _: C                        System.exit(1);/ d8 b  q$ `( f3 B. T6 Z) n
                }/ p  v- F; d$ b9 l' z

- }+ b% s  m! b+ g4 d/ k5 x2 b
9 w2 {' Y  |, _. R# r' M        }
) U9 m8 R+ A" S8 s* K! J+ G# B$ w5 O3 ?; k" u- F$ M! M
        private void swarmSetp() {
: F+ f& k" R0 x: }: Y* G- C                list.addLast(new Agent(Id));3 `4 R) ~: ~# E4 V9 V8 w/ L0 j
                Id++;
9 {" `$ O1 P. B3 a1 y/ t6 |  f        }; o3 M9 ?5 D2 a3 B& v2 i( @

# t' T+ S( g6 @1 j        public Activity activateIn(Swarm context) {8 V/ s; h& j0 B2 ~0 D
                super.activateIn(context);
% \" }. r* P5 W                schedule.activateIn(this);
2 h: _: X: K+ l. Z3 F8 ]                return getActivity();
6 d# r7 n! Y, p7 p; C        }
% ]: ^4 X: C% [5 R' ]) ]+ C$ c/ X  X- @, V. V6 g3 Y/ z; X
        public static void main(String[] args) {4 Y: J$ S4 Z8 b, o. C. @+ e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 c- K' y4 _  f8 B/ I, Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! r  ]4 F5 F/ S& f! u" [2 R: i. A                swarms.buildObjects();
. l: |0 X8 G+ a                swarms.buildActions();
' c" q+ |5 y- J. c% a* ~! q, P9 z                swarms.activateIn(null).run();
6 F8 }$ `0 l3 @& ]        }
3 I7 ]7 D' j" L8 }$ n; p& g" x" n
, n" N3 d& F- k$ \! R0 [1 S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-25 10:43 , Processed in 0.016728 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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