设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11493|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % q; G) _* E4 [- k& K( b; A
; r: f+ p8 D: x& B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( i$ R' \; I* D3 [( h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 \' ?9 e% @* b/ Z
swarm.SignatureNotFoundException4 P) Y8 n( c6 T9 H$ q- q
        at swarm.Selector.<init>(Selector.java:76)  J' m, U2 H  a5 i! }) |5 Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 A+ N# N+ @" g        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ F' h: \% h8 Q3 L- i) x$ V2 j) v
) f# x  m$ C# ^9 W6 F2 I

; c% S1 x6 l' @7 f+ ^import swarm.objectbase.SwarmImpl;, C. H) b2 Z  K" A2 `6 b/ C
import swarm.objectbase.Swarm;
3 d2 Y# {4 O! f8 G, nimport swarm.activity.ScheduleImpl;
; M3 @: t+ _; Pimport swarm.activity.Activity;' q  U' A7 z+ i' w" T: E
import swarm.activity.ActionGroupImpl;
5 H5 C1 n1 Y( {# vimport swarm.collections.ListImpl;
  ]  j& O$ n( {import swarm.defobj.Zone;
7 h7 T1 D$ z# P) b4 b1 k- p2 m, L+ L% fimport swarm.Globals;( v( v" I7 o* s( S' [1 K8 Z
import swarm.Selector;
3 i2 M5 O, b" Pimport swarm.activity.ActionGroup;
2 v0 T4 a# V5 [% ^; o; \  [# }class Agent {
, t( q0 f& @# ~! _5 z* }        char id;9 x& ]  O2 Q0 u' o7 D0 f/ y' o, r/ n

% _: q; o- ?7 d6 {        Agent(char id) {
% S! U' \; U* T' b- ?                this.id = id;: x) V# l6 Y8 [! i! c+ y( v+ ?) E
        }
2 `, W4 i9 U, Z, H) C* p" g$ X% p6 X% I5 s9 D
        public void agentStep() {$ t) z- g0 q3 d
                System.out.println(id + ":" + Globals.env.getCurrentTime());& M1 b! i- k- n
        }' Z3 V# E+ a* s3 H
}) l; |! G8 Q7 M- {. e+ b
  |/ q, v  D( [1 e- Q7 L* T
public class ActionGroupDemo extends SwarmImpl {" B* j, ?3 l' G: }
        ScheduleImpl schedule;
# l' o: O9 |( W% c2 L9 Z9 b        ActionGroupImpl actionGroup;% R' y4 _$ D* l+ {1 Q0 [' j+ q0 M
        ListImpl list;
  e$ e+ u! {3 [2 L5 N/ N& W! C) d- ]  {7 f        char Id = 'a';2 v, q# d. h/ \, M7 X6 G) z& O
) L4 Q$ z* B7 q1 n, }
        ActionGroupDemo(Zone aZone) {% a# h5 y2 a& L3 s. y
                super(aZone);/ [& N6 u6 T. E1 k6 \! @. c
                list = new ListImpl(aZone);. _5 b. V" d! z3 i* S& [
                swarmSetp();- _; k4 t1 w7 M
                actionGroup = new ActionGroupImpl(aZone);$ m$ p8 r% Q  D' d% H- G1 z
                schedule = new ScheduleImpl(aZone);
1 ^( S! v+ e+ E: E, m1 i! A; L                try {
# l, D6 Q- E' a- ~2 _                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 h% H8 S, j2 Z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 g6 u1 \) _/ l5 m0 g                        $ c8 G1 n! S0 Q
                        actionGroup.createActionForEach$message(list, agentSel);
0 n+ i6 a0 |% t: V                        actionGroup.createActionTo$message(this, swarmSel);
8 d8 R7 l3 ~- d. ]! p. ?, V0 o( d                        schedule.at$createAction(0, actionGroup);
: }! T) z3 `8 N                        schedule.at$createAction(1, actionGroup);9 H4 @+ i8 a  H
                        schedule.at$createAction(2, actionGroup);
5 O  P2 C/ T7 O. [4 V3 ]" T6 O2 \, G; g4 {" j
                } catch (Exception e) {
# k8 P9 [$ k- G, i0 h: d$ m8 l                        e.printStackTrace(System.err);
! x% q2 j, n4 D9 s' K# o+ x( I                        //System.out.println(e);
# u* [+ R1 J; {2 `+ S% n8 f4 s                        System.exit(1);
; m& E5 }/ O' x& U  ^8 ^. h                }3 k* J% \+ a' ~4 B
+ ]# j  d& ]# L

. a! D1 u6 j) J) {2 I2 |/ @        }# R/ W* w$ [' v! Y$ Q
+ W6 J% i/ l5 y9 O' g
        private void swarmSetp() {3 o9 e0 V4 r1 |1 s$ x
                list.addLast(new Agent(Id));
- @: L+ A9 X! z                Id++;+ y3 l# f1 E' i: f
        }# Y/ Z( `3 S+ t  l) [
7 L7 j; Q  q5 j/ ?2 ]+ O
        public Activity activateIn(Swarm context) {
" ]! B9 w  C6 n: A; l                super.activateIn(context);" B: n4 @$ ?5 O2 `& N  n
                schedule.activateIn(this);5 v! t" D4 O" {2 [5 @  P1 @3 c: c5 `; c
                return getActivity();
) @* g: k* e0 c4 y        }2 K+ ^4 @/ W* k/ M

: L3 d. k2 P# K# L$ R- Y6 e! P0 E        public static void main(String[] args) {
; V( o) U" A) |1 `; l! Y2 ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 Y" A5 t' ^2 v8 N% m                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 S8 n0 G0 [0 K
                swarms.buildObjects();
3 _+ j7 m; E! `- q4 T                swarms.buildActions();1 b2 B, }+ C( O0 K
                swarms.activateIn(null).run();9 |) {7 D# R7 d- k* {
        }
5 G4 U, v# t3 Y1 ~" w' ?3 i) R% H/ \. F+ X
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-14 00:54 , Processed in 0.016819 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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