设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10268|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& Q/ Z* `! Q! J* F& ~. {# X% F8 z; i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- e/ _2 Q/ j6 u( w( c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 F& e: x  W. ?- s* F
swarm.SignatureNotFoundException
: O1 u: Y9 E2 W0 Y  @0 _        at swarm.Selector.<init>(Selector.java:76)% R# t1 L0 E1 Z  U" C3 I# r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* p/ j9 [! l9 [; f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 [; o; b4 f% d
, x  R5 V  i' u; C: i& K9 p' {  ?/ Q' h' F
import swarm.objectbase.SwarmImpl;% Q/ m  V& _) v7 a
import swarm.objectbase.Swarm;
! c' w, @( n2 E: F2 Q5 l8 Oimport swarm.activity.ScheduleImpl;
0 r- F, E6 r6 k; Aimport swarm.activity.Activity;
4 q0 ^& b7 s% f, P  ^$ kimport swarm.activity.ActionGroupImpl;
! o) R' L) o1 K' ]" kimport swarm.collections.ListImpl;6 r4 v2 i3 y" q/ Y
import swarm.defobj.Zone;
, b. V& |+ ^, B8 kimport swarm.Globals;$ n: n+ J6 U% Q* c% {9 e3 s
import swarm.Selector;
& i( M7 D' k" d( V8 G/ s1 Simport swarm.activity.ActionGroup; 7 U4 V: t7 W' g" @1 _4 \$ c6 @/ Z
class Agent {
# K# @: G% d% d3 h) C) y        char id;) A+ r" E$ y# N8 E! y
9 p! U& P2 i4 e2 M; ^+ \8 l4 l
        Agent(char id) {  f: t! l0 ^  b$ }0 m: Q4 L8 c
                this.id = id;
! j+ H& A" S2 G( L/ S' U        }
# W- r# [  s, d7 {6 y- s8 n1 M! E6 `- H
        public void agentStep() {
, D7 v# R% b$ h6 ~  y& ?+ R                System.out.println(id + ":" + Globals.env.getCurrentTime());
( ]- T5 U  H7 F. o+ M0 o7 J        }8 K, T. Y0 ]3 {3 U3 F; C% D
}3 W7 g- |( O6 b& l/ v* E5 w. Y( a

+ x8 f' z! D# B( gpublic class ActionGroupDemo extends SwarmImpl {
. y( u8 B$ t$ w, x        ScheduleImpl schedule;- L3 X( {' }+ Y) K
        ActionGroupImpl actionGroup;
7 I' @3 L" b$ D3 [/ i9 S        ListImpl list;
3 J3 A1 W* C( V$ L! H8 F        char Id = 'a';- g( z3 y5 f% Q7 S% O- C& f

8 m! s) K, c/ V8 b$ @- Q        ActionGroupDemo(Zone aZone) {
8 K: E) t) u1 P0 t  K3 k" O/ ~4 X                super(aZone);5 n) Q  X$ a  N8 ]
                list = new ListImpl(aZone);
! ]) B/ I7 c/ @7 q) r! b                swarmSetp();
4 `. X8 a" d7 X1 p: Y                actionGroup = new ActionGroupImpl(aZone);# y2 d# m* d- Y  B. v
                schedule = new ScheduleImpl(aZone);# P7 @+ P* b7 y! R0 Y/ `
                try {
8 R$ h3 L+ D( o% ]                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 g8 s( V6 M: ~) `8 y% W8 r
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. \/ T4 @5 F9 \7 r
                        
! a9 ~* X- h# [& G# I( @) R3 R                        actionGroup.createActionForEach$message(list, agentSel);
+ X3 L# S* N; `5 q0 I                        actionGroup.createActionTo$message(this, swarmSel);
% g8 i. L& v& O, M' a5 h- p                        schedule.at$createAction(0, actionGroup);
. M& r; H2 J3 S" w  m+ x$ U                        schedule.at$createAction(1, actionGroup);
) i9 z! Y+ w* d' ?9 p% V/ i                        schedule.at$createAction(2, actionGroup);& P. m, A+ W: E6 ?

7 z; d- x7 |8 v5 Z8 s0 V2 A" y                } catch (Exception e) {
" g1 O" R2 e4 I2 d6 z7 x                        e.printStackTrace(System.err);
' Y) I6 P1 J, {. x+ _. m                        //System.out.println(e);2 Z7 u0 L0 D0 q
                        System.exit(1);
! i! i1 N& O* G2 l+ u9 U                }1 Q* Z: O' I% ]$ |

% s2 p4 V- r6 I* y2 W. o, Y. G' N6 D1 Z* P+ i/ H1 Q
        }
4 @- ?9 k% y( |7 c) K* B( _0 z3 p) x) v9 \
        private void swarmSetp() {1 ^$ s% o' I# R
                list.addLast(new Agent(Id));4 P( x9 l( J7 o* v3 }% l% j/ `
                Id++;) ~5 [- z& ]% X9 s
        }
$ _, z- s, N; H( V2 V- z/ t5 u; F( A( a/ c( s! U- D; u
        public Activity activateIn(Swarm context) {$ z+ q  V; _# y: @  A: f2 X+ \; c
                super.activateIn(context);9 S/ {" q' a' V( \: V
                schedule.activateIn(this);
/ i& @) c! X: P, R- C% z                return getActivity();  R1 U: S( y4 w4 @. }
        }& z: U6 }' Y8 o# x! Z7 d
: S) H  t1 `$ U
        public static void main(String[] args) {# W4 X; p/ w- n6 L. q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% G& c' Z3 L4 [* _6 O
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 _8 X, l6 Q$ G. T* ]8 H! I) [                swarms.buildObjects();
7 T% A. k. a) b: Q9 J; ]                swarms.buildActions();& a# r+ H2 q0 x+ e# }
                swarms.activateIn(null).run();
% i6 ^+ O# e. B" X9 N# l( J        }" e3 g: e( N% s  c
1 D1 u$ w9 G% J" z- F+ l
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-9 03:28 , Processed in 0.015761 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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