设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6055|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - b  B0 G4 M' u# K+ C" E9 t+ ^

$ f  Q2 q) H' u7 w  D$ m, O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- D3 I  I9 a' i& C" l  K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 v$ u' n, \8 E' Pswarm.SignatureNotFoundException& ~3 `6 |7 y2 }! p$ A
        at swarm.Selector.<init>(Selector.java:76)
7 W2 l, y, d& [  q! @( s1 q/ |        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# B: z9 q, b5 L; ]* ?
        at ActionGroupDemo.main(ActionGroupDemo.java:67)  }1 }1 G9 C0 O9 H- b! m

; q; N" b+ m0 m  L5 K; P8 U9 U  V' I; E5 K9 R2 w* W
import swarm.objectbase.SwarmImpl;
( K. j6 _  y  B" Iimport swarm.objectbase.Swarm;
9 P0 x6 \2 |/ cimport swarm.activity.ScheduleImpl;
1 Q6 D' H+ k  a) Ximport swarm.activity.Activity;0 b& f( @$ a* }% X0 j
import swarm.activity.ActionGroupImpl;/ B) H$ r7 O; C! k) I3 Q
import swarm.collections.ListImpl;! r* a7 [0 D3 ^) H6 G
import swarm.defobj.Zone;
' S; C3 j6 }) C8 m5 {import swarm.Globals;
0 x6 t+ J1 S- C; ^! Nimport swarm.Selector;7 F6 n9 m3 \! d, R3 r+ ?* c3 W3 k
import swarm.activity.ActionGroup; " Z. o6 W; C" `% |
class Agent {- D9 c# T, ~4 k8 S
        char id;# f4 j* Z8 a+ Y/ t, o

3 K8 }& w. R, O! `6 L        Agent(char id) {  L- d: s& w; J$ \8 M5 i% I) W
                this.id = id;
5 b: e* q4 I* ]0 X        }
0 b1 m/ [% b' h! x3 h0 g  g! v! U1 i# z+ L' `* x4 e, _. D
        public void agentStep() {: i) ^. g$ |1 I4 A$ E
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 ?0 s' q$ u. h. P  g- m
        }1 @3 Z4 P+ O9 ?! f4 u. A
}4 J8 z' s! Q/ x
0 o4 l- c  a' Z9 j
public class ActionGroupDemo extends SwarmImpl {# R  ?9 l5 q6 Q1 f
        ScheduleImpl schedule;/ M! P, r( u) x4 I  x
        ActionGroupImpl actionGroup;
% t9 u% ?' M0 X0 u1 }$ J/ L5 j        ListImpl list;
; q; b) X- {8 U        char Id = 'a';& ]! K0 \( c! |9 A
7 t0 M% t4 F& b
        ActionGroupDemo(Zone aZone) {. u1 k, f3 o2 ?- `6 L; d$ [
                super(aZone);
% K, W$ ?1 O" Z" v3 C9 D6 X                list = new ListImpl(aZone);
. X, q2 A7 f  ~9 j" x' y                swarmSetp();
  u% Y( i& a$ r  g4 m) v" C                actionGroup = new ActionGroupImpl(aZone);
( s  U* ?' p4 f                schedule = new ScheduleImpl(aZone);9 B4 J/ [7 z1 D
                try {
6 s* h  `: }0 n/ t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ X$ O3 h1 o/ i' b) c- U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 V* v3 z( \8 }: a2 R6 F7 v! n' E0 }3 W
                        3 g+ e7 X5 y- H3 r& ?9 C
                        actionGroup.createActionForEach$message(list, agentSel);
' ~9 ]; V' z# _$ C% c& M$ d0 @                        actionGroup.createActionTo$message(this, swarmSel);
: O" ~8 X1 j6 H- R; D                        schedule.at$createAction(0, actionGroup);4 A, a& z2 d/ ~  j' Q0 u
                        schedule.at$createAction(1, actionGroup);( |: h- h. _$ T
                        schedule.at$createAction(2, actionGroup);
! @2 S; I1 Y5 k; }- S3 z, l! `' b5 z8 N5 T* C; E
                } catch (Exception e) {1 ^3 h; U- K/ Z8 O  [: X" g  V) U
                        e.printStackTrace(System.err);
9 h/ {$ t5 `7 j& e                        //System.out.println(e);
* T% M. v$ z% O4 m                        System.exit(1);
/ L7 X. _7 a4 Z                }  G0 d  }, E. x! S) p8 v
3 E& b+ x2 v( X/ C. u
6 B) v1 y/ l) o) r; W5 s
        }, Z) m" U+ @6 c+ y1 ?

, h3 l; p# N# T! t4 C$ N$ ~        private void swarmSetp() {
. B  g5 _! e" E* Q$ ?. z                list.addLast(new Agent(Id));1 i$ j0 a1 Q7 _
                Id++;
5 K" h5 F" D4 \- P" }        }
( }1 r% y* W2 r  l
  g8 i4 F! c- H  z- W6 g4 p- o        public Activity activateIn(Swarm context) {, d/ q. L' h" g, T; ?3 L
                super.activateIn(context);
3 \7 D: s4 w9 z0 ^8 ]                schedule.activateIn(this);. m7 Q. v' d9 k4 M- ?
                return getActivity();7 K& t+ Y2 U0 @' Z
        }* n! K( T. N5 Z8 V

; L; p" r7 X3 r6 J; P4 q, C) Y! V: r8 k        public static void main(String[] args) {
" @/ C+ R$ g$ X; m5 V; t, O/ X+ K1 G; {, p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 u/ w1 V2 k: B# A$ a7 l* e                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* F3 h% j4 u$ Z4 ?                swarms.buildObjects();
0 @  o# q1 f; v- O7 O( T  E6 X7 }                swarms.buildActions();
4 S2 p& p# }& Q  T( v+ i/ h9 o" v                swarms.activateIn(null).run();% P$ {7 v6 \: m  u( s
        }
3 D) L5 j, c+ C2 d, G. V2 M& V0 x8 o/ `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-15 10:44 , Processed in 0.020381 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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