设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8512|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* O) E1 B$ @3 d7 \$ }
$ P' ?  w& H) J4 P# ^2 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) x6 n1 N3 V+ M6 @; E- V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# \# S. P0 E0 T9 L
swarm.SignatureNotFoundException
( N* T, x. r3 |6 x2 d( e        at swarm.Selector.<init>(Selector.java:76)5 |# a. d, c* w  l2 ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; t; ?2 J0 Y5 ?7 I        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" p) x0 u- S% k$ ^) _6 [- O# r! u6 y
; L8 o5 W7 A$ \( p, o* U: i- W
8 s3 e3 p3 `0 L: fimport swarm.objectbase.SwarmImpl;# L, {6 M/ t# B1 ^2 h
import swarm.objectbase.Swarm;* x. g" ]) L% Z* R+ R
import swarm.activity.ScheduleImpl;
& ?% [' Z' v. u) Timport swarm.activity.Activity;+ P' o$ r6 ~/ W+ b+ {- K
import swarm.activity.ActionGroupImpl;
8 p2 h: g$ M7 f+ ~( c9 F9 gimport swarm.collections.ListImpl;
. R# B% Q& n  j1 p, c7 c5 Q0 K; @: ]import swarm.defobj.Zone; 3 \5 T" j$ \" o( C9 n+ j6 G: m7 M
import swarm.Globals;8 H5 K9 y6 q2 _6 \" `2 z
import swarm.Selector;. L$ t2 v. v7 h6 w9 i: ^
import swarm.activity.ActionGroup; ' _6 r& e* a% I' o8 v
class Agent {
8 d2 b0 J' s) _( s1 Z; Q6 Y        char id;9 g% n, _+ k$ G
& G& g, {3 K4 H+ g. X( N- M# W4 g6 ]; J/ X
        Agent(char id) {+ w/ P9 u! o6 \0 C, q+ b8 ^
                this.id = id;% H1 H: t1 E0 v9 W/ Z! h" b
        }
) R/ t6 B. M- D' W9 ?4 j% ]- L3 z( v; z( T  ^: ?: {/ v$ ~/ ?
        public void agentStep() {
$ r3 _/ G: l: H4 G" k4 E                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 o% |* r6 k1 H; A6 k        }' {0 N% P3 C. Z% k( {- [! o
}4 m" y: h" ?( A" e
+ H2 P0 k5 E. c% g* p
public class ActionGroupDemo extends SwarmImpl {+ K; k" Z2 _+ R- t3 p, p7 t
        ScheduleImpl schedule;8 |1 G$ P9 I- d9 d# T* F
        ActionGroupImpl actionGroup;
  X0 o  t* c3 ~. l        ListImpl list;
' v0 {; ^2 E& I. S# c        char Id = 'a';
7 E0 ]6 G: V+ Y4 a* i) q
. K0 g+ f( n2 J0 C; i        ActionGroupDemo(Zone aZone) {# s- |1 a2 j/ V( N- }
                super(aZone);# E4 R6 l, {1 ?1 j" e/ d; p  W" b
                list = new ListImpl(aZone);
* F1 G( s+ M9 s1 i; N; \                swarmSetp();- q; D  R- F# f& r2 Y
                actionGroup = new ActionGroupImpl(aZone);/ f9 e& d: ]) `* n4 g5 g8 a& N
                schedule = new ScheduleImpl(aZone);9 D2 r/ o. V$ t1 }! l! h
                try {7 K/ c, R. G' m4 t: f
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: y% E  s8 J: u6 T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 {5 \! ?% {2 z- J
                          J: p. K8 ^9 |: N' {/ q8 e
                        actionGroup.createActionForEach$message(list, agentSel);! M8 X4 p/ P2 m
                        actionGroup.createActionTo$message(this, swarmSel);: h' R* {8 A  }( Y+ B' L, x7 V& F. E
                        schedule.at$createAction(0, actionGroup);* R8 d, y( v2 \$ n% M( b% ?
                        schedule.at$createAction(1, actionGroup);
/ Q6 {% _; a0 ]$ U5 x                        schedule.at$createAction(2, actionGroup);
5 R4 P  S( G" ?
2 A! |7 R+ `2 d$ [- B                } catch (Exception e) {& F$ B" h: a3 f' Y' p- P5 z
                        e.printStackTrace(System.err);4 j' O6 J) l! r* Q% j5 X$ o# l
                        //System.out.println(e);
$ h; S, a0 d( X: L* x7 `+ k                        System.exit(1);' e: _8 u5 X3 Y; N2 K
                }
* X3 V7 R+ P4 {! Q/ `7 Z7 B) B% e1 d/ W
9 K: ~. C7 W, u* w
        }
6 c+ H. [, V% f1 \: ?) x" w7 h% d1 l$ q
        private void swarmSetp() {
6 C8 v; Q* Y" @1 ^: M# q' h                list.addLast(new Agent(Id));; W6 W9 f1 r, C2 u, b$ O6 F# z
                Id++;; [' T& Y$ E/ w. _* v) Q
        }
: T. o6 E( m6 `- S. y2 p
8 g7 [. V7 a- y9 W* s        public Activity activateIn(Swarm context) {
8 k& }. z1 v) ?( V1 w+ R6 T                super.activateIn(context);+ `# `2 Y3 a) Q, b
                schedule.activateIn(this);# r% K* h# b/ V, S/ t, O5 }
                return getActivity();& v6 [* d* _5 B' \
        }; l1 ~$ S9 @, u- L

' r9 Y; h2 {* |7 Y3 p' y; n  n        public static void main(String[] args) {
) E! m9 t' E  z& l' G6 M. k                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, f$ M! E- n' W( p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& e/ @* \& ]# b4 m: n' }                swarms.buildObjects();0 x' h5 J! \% M
                swarms.buildActions();
, Y8 F. E% s! D! S. g/ o$ K7 l                swarms.activateIn(null).run();
6 q& e* B9 B& a' n& x' x9 Q        }
& [. r; l' Q& E: f& U/ ^
- ^% M- ]4 l- C4 ?}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-15 00:08 , Processed in 0.016999 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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