设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5915|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , l$ f1 x) E5 e* Y/ |

8 b4 B: y5 v7 X. k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  _8 w/ p8 b' Q5 g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ {: k, ~. a! s+ @swarm.SignatureNotFoundException
( |) ~. ^# j1 O  f6 {. L% |        at swarm.Selector.<init>(Selector.java:76)
8 }- i( Q: z1 c3 s        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 I: c# a8 L- ^. u4 u3 o
        at ActionGroupDemo.main(ActionGroupDemo.java:67), t, N5 }1 s4 z: J. d" v

6 `  t& ?2 F9 K, a" y5 ^! @- b
3 w8 F" T- p% V9 nimport swarm.objectbase.SwarmImpl;
" k- F; [7 ]" f. aimport swarm.objectbase.Swarm;9 z1 G- J1 e  \) T0 g% p& ?4 q
import swarm.activity.ScheduleImpl;
3 ?* d1 ]1 y1 B; r! limport swarm.activity.Activity;* z6 k0 o2 c) k" V9 Z+ s
import swarm.activity.ActionGroupImpl;3 w+ Q' Z) H; ]
import swarm.collections.ListImpl;- C( U( Q( B5 F/ o
import swarm.defobj.Zone;   f8 B( r6 l0 L! J, K5 G) ?) k
import swarm.Globals;  S. E( B: m) e5 E
import swarm.Selector;
/ y/ i7 G( e2 o4 s( }$ kimport swarm.activity.ActionGroup; / j& {, R' ]. n! W/ @6 `% X
class Agent {
0 y8 c  M. @( @# D( O* v1 d' g" E        char id;2 C% {& h( h! [% R6 E  z

7 p* h  U; \, K. J$ `0 g        Agent(char id) {
6 [6 c# R2 U( ?  y) t( r                this.id = id;: r3 @. l- r  q1 V  k4 p- a
        }/ C+ s, b8 r. a+ r8 k+ q

+ ~" i' h9 o/ J- |8 U, P        public void agentStep() {
" O0 V0 b! K3 _' q4 y0 N1 Q8 y                System.out.println(id + ":" + Globals.env.getCurrentTime());. S4 T7 Q+ p1 W2 H1 J8 ?
        }
4 Z$ O+ B9 K! x3 U7 P( O$ m}9 w# E% E. t; ~, ^) D" m5 g/ ]
- d$ v  \1 g6 B9 i0 m2 F8 r
public class ActionGroupDemo extends SwarmImpl {# C# A% u* @; Q
        ScheduleImpl schedule;9 |$ b' o8 H5 Y1 f( J- L* B3 M/ e: f
        ActionGroupImpl actionGroup;
2 P8 J* c" T/ s, N, n& i- @        ListImpl list;
4 d. ~" w! }9 ?3 @7 `% N+ `7 t        char Id = 'a';" o5 u. V0 E( R+ D' p
/ f. x/ L+ |& T+ X9 y% I* f
        ActionGroupDemo(Zone aZone) {
/ o& A* y2 M8 ~# ^2 C) O) _                super(aZone);+ y" S8 I3 p% y0 T
                list = new ListImpl(aZone);
5 m7 V/ O( q' y. |1 @6 C, s$ R                swarmSetp();
% T) S. u+ C0 V                actionGroup = new ActionGroupImpl(aZone);4 M+ e4 [0 c' d4 R* E5 Y
                schedule = new ScheduleImpl(aZone);" ~7 J9 t8 ]+ p
                try {
, d: c% V; d8 m7 U                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 F8 v, k3 o3 w/ B! o
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: \7 d- n& c" y) @
                        
5 s7 X8 B9 b; A7 R                        actionGroup.createActionForEach$message(list, agentSel);5 I) ]9 ~5 m4 e
                        actionGroup.createActionTo$message(this, swarmSel);' L; I" o" y+ F% R; ]( t9 F
                        schedule.at$createAction(0, actionGroup);5 v# ~7 f6 J0 d- \8 V) t
                        schedule.at$createAction(1, actionGroup);
9 }' y# X$ g% c" ?0 R# W* U                        schedule.at$createAction(2, actionGroup);
; [) U* H5 X# \" A8 X
0 U; h: ]0 w/ I2 P) _' ]                } catch (Exception e) {
6 o  R' A9 W2 x  y1 e/ f% A) m                        e.printStackTrace(System.err);
9 W( V, g* C2 q8 A( z! k2 w                        //System.out.println(e);7 g1 @' S9 X6 M- |1 ^2 c5 V
                        System.exit(1);
/ e! [7 _" G/ W1 L& Q' N( H                }3 M. Z) \4 [* V8 V, O+ k% h
, P2 T" J7 p7 O

$ R/ D/ F: L, Y9 q; ?7 y6 |        }1 @7 n- R! T4 p
2 n- }, O. j% D7 X- r5 U. g) e
        private void swarmSetp() {8 o: _/ s, \; m
                list.addLast(new Agent(Id));9 g0 @+ ~% l4 i( [. S+ X6 A
                Id++;
! [% ~1 Y* C4 g: e        }  C% H! `8 `( H- e" k+ p
# W6 z: m. Z* m* {5 g
        public Activity activateIn(Swarm context) {8 i. q! F3 A4 ~% n
                super.activateIn(context);
4 F8 q2 r& \- ~& w1 C$ V                schedule.activateIn(this);, W: n0 e/ T3 P" z4 t
                return getActivity();8 S1 B: r8 U) Z6 \  h: {! n7 F
        }
$ d! |1 \2 K! `; t$ P
% R% }# ^( d( w7 s        public static void main(String[] args) {
/ I9 l7 s3 V5 S; }3 {7 C                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 K: r8 n0 r# w5 o! ~0 E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ z/ j. ]6 ?+ `
                swarms.buildObjects();6 X* I2 @+ P. T5 T" b+ V
                swarms.buildActions();. a1 a0 t; j7 U; X" p
                swarms.activateIn(null).run();+ ~2 C. o: {" r0 s# H+ Z& t
        }
7 w8 J' ]7 X6 c0 @6 {! y/ m5 Z- R( k( r" I# M% L
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-7 08:44 , Processed in 2.004165 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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