设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7969|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 M" V+ k  I1 r: K3 G: L8 D* p4 W# Z9 a& f& R" }9 S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 u. v+ ]2 [/ \3 e; j: _0 f5 f/ ]- b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 z* F$ w- z! @3 {# f' {swarm.SignatureNotFoundException
/ u) l! g5 b, y, t2 J& M        at swarm.Selector.<init>(Selector.java:76)2 w; @* T7 K) X2 W# l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 p0 |# |5 _: q# z        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: l; k# r2 A, T* I: L. W/ U  B& m. x8 m5 S, n9 D& o

# L0 D- F0 N+ q2 J5 dimport swarm.objectbase.SwarmImpl;) J8 z7 }6 a8 M" l! [: t0 x
import swarm.objectbase.Swarm;# {& }' `* _6 ]5 Q  R, N: E
import swarm.activity.ScheduleImpl;
9 e) w# K1 u  R, i, aimport swarm.activity.Activity;8 ^: Q8 E* x  L$ R. M
import swarm.activity.ActionGroupImpl;
* z% C4 `7 X# W7 A5 Mimport swarm.collections.ListImpl;( x) g8 o9 ^/ y! S: l& G. g
import swarm.defobj.Zone;
  L0 B! `) D5 |; h  s8 k4 oimport swarm.Globals;
" [7 f2 Z8 Y4 V0 U/ Nimport swarm.Selector;2 T. i, S* i5 e  l; ^3 V. e: K
import swarm.activity.ActionGroup;
' ]% Q$ _* I3 Zclass Agent {
: \1 S, J) Q. e/ ]+ N( s5 r) u        char id;5 _# h8 ^% K; Y% Z$ k# P+ T

/ O1 g/ F! r" j# e        Agent(char id) {4 _3 t( J3 m7 e9 v
                this.id = id;
, V( I) `; Z- a, ]        }
1 A0 j; Z, Y0 A. b
& s# Q) z1 y/ r5 T* @% I, T        public void agentStep() {
$ |9 r6 B4 F: `1 |# p& O                System.out.println(id + ":" + Globals.env.getCurrentTime());
# q- q* F& g4 d* ^$ z- a5 d3 b% X        }0 i5 G7 M1 s) ~, c7 g7 g; P* ^+ w
}
8 \# f; c5 {( S8 S0 h. @( o9 P
/ d; D! \% w% s3 U& ?/ _public class ActionGroupDemo extends SwarmImpl {. N6 @( @. u" J% K' I
        ScheduleImpl schedule;
7 X- j; Q- T9 Y# f+ p) n, V( l        ActionGroupImpl actionGroup;( y% w+ [: C, H) b8 O4 P
        ListImpl list;
: r4 p+ [2 r! ~        char Id = 'a';% R7 V  m7 M- ]) g! C
" K* r+ D9 I% M$ k. r" m4 g" M. y
        ActionGroupDemo(Zone aZone) {# w) k) J: h" @) r+ s0 a
                super(aZone);) ]  [# {( X8 H2 ~
                list = new ListImpl(aZone);
! R6 R! w$ _# A  j4 |, e( g9 _                swarmSetp();/ l6 m' f* F0 ~9 A( B$ ]: ^" i
                actionGroup = new ActionGroupImpl(aZone);) Z3 m/ W7 b4 R& G5 m- h
                schedule = new ScheduleImpl(aZone);
5 e: U+ X$ o: m8 y( ?0 c2 x& a3 b% X5 n                try {1 J- B, J/ R) Q8 x/ [% B5 {; X
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 o* y& l2 l5 L5 V$ d: c/ V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 _; U  U' q, a$ v
                        
5 K! n$ X) t3 v! z9 |                        actionGroup.createActionForEach$message(list, agentSel);, _  C4 C8 g4 z# E
                        actionGroup.createActionTo$message(this, swarmSel);# p% R2 l* l+ S1 i
                        schedule.at$createAction(0, actionGroup);) @3 ~: {4 g0 @
                        schedule.at$createAction(1, actionGroup);) s1 f- j* E0 l) V  h; N0 l0 u7 x4 n
                        schedule.at$createAction(2, actionGroup);
$ d0 F0 b7 Y: W2 a1 m
# G3 A' M# N( E                } catch (Exception e) {
; V; f' D/ W0 R                        e.printStackTrace(System.err);
) Y" t7 S: l* a) Q                        //System.out.println(e);
, m9 a6 v, C& F- l: s. r( B: ]                        System.exit(1);3 u9 o& Y4 M$ G7 I1 q: q
                }
5 {8 _, o2 O% l* j8 ?, x
9 ~8 C- [& U4 a% B
! L- U+ T# W& w" o1 p) ?0 b        }
& y# ?% R: m# v! _# N! w2 l/ D  d+ K
        private void swarmSetp() {6 S" |0 k# u, y7 ]
                list.addLast(new Agent(Id));
5 _9 }- {4 O. c/ {; b9 L+ f: x                Id++;
" j  l" t0 `1 R' G+ m        }
) @' m  o/ v: t( _) H: Q
0 p8 }" G1 f4 \- h- P, b        public Activity activateIn(Swarm context) {0 ^# @; |- r3 N0 L
                super.activateIn(context);
2 i, |) H- e1 C( E% X                schedule.activateIn(this);
% M  d9 Y+ ?4 D                return getActivity();- P; O) ^' h: H; K* b( r& k7 E
        }: s% }+ d9 l2 P; e# L$ a

4 |% _6 w7 Y' c9 B  a; M        public static void main(String[] args) {
6 G' I9 S; r% I  h9 P6 h! X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( v" X: K. u: s' N  K1 G, }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- X* z: K. X5 l1 H0 e1 @3 V
                swarms.buildObjects();+ a, u% s3 a) S" n- U- g6 C
                swarms.buildActions();
5 ~6 @1 b5 X8 q7 G6 M+ Y" e                swarms.activateIn(null).run();) E$ @- y* \. z. z. Z
        }
0 J7 B. r& P) I1 ?$ _) V- m  C0 p" F5 i- R% e" |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-24 21:51 , Processed in 0.022944 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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