设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12944|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   \8 d! R0 {9 L5 g- b! a2 A; R5 `$ D
* x* V8 ~; B8 z8 t9 U+ O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' {7 x# u% ]( T, v8 ?7 H+ G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 ?5 C  p# O/ c! k
swarm.SignatureNotFoundException. l  h' [5 H+ }- _  f
        at swarm.Selector.<init>(Selector.java:76)
/ y2 O) t+ Z4 J! f/ ^6 U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 P1 O+ s" G% l: \# e' \
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 e/ c( i% I5 T+ K! C# H( L8 d. d6 A+ o# r9 k0 Y8 `

& P7 ?8 ]- V( }, n! Bimport swarm.objectbase.SwarmImpl;4 F* _) |: k+ k3 M- J* W
import swarm.objectbase.Swarm;
4 t0 @& q9 i$ O8 u- T; a- himport swarm.activity.ScheduleImpl;
7 Z8 r* z4 r( m' M$ Q# bimport swarm.activity.Activity;0 \7 Y$ J9 H8 f! ?0 a/ @; U4 f
import swarm.activity.ActionGroupImpl;$ L. i+ u! I" |  R
import swarm.collections.ListImpl;4 s, `% F# \) E# I
import swarm.defobj.Zone;
1 Z0 |  G6 _' j7 c5 wimport swarm.Globals;& y& k7 m7 N7 S; i3 z+ [' R
import swarm.Selector;& f" \2 [. A7 U. \8 c  w% s
import swarm.activity.ActionGroup; 1 B" z$ @' x5 m8 Q0 B, X( w
class Agent {
& Q9 Y' {4 l. Q, m" Z        char id;6 ~1 \* H3 M: v# C
! i4 E# k/ e  C- T9 \& a. T& y$ x
        Agent(char id) {
' H# |! j1 T" {3 Q* f5 G7 t                this.id = id;
* n4 F  S4 @5 r        }* W3 {: J' Q- y0 |+ w" N" x: L
  g9 H7 K' A/ H3 F4 Q4 E" \
        public void agentStep() {
! j" N# x( a3 H! e% O                System.out.println(id + ":" + Globals.env.getCurrentTime());: k* x( }0 x' c+ O4 L! y
        }9 L* L7 n7 k: w8 C- Z: S
}
2 e4 G4 Q' H2 G' U  U  p+ x
" m5 k5 L4 q# m& g' y, Kpublic class ActionGroupDemo extends SwarmImpl {
2 p) ]9 }; T: F$ [* Y4 K3 g        ScheduleImpl schedule;" F% X+ S. O( z3 b) W7 e
        ActionGroupImpl actionGroup;/ g7 i7 n( s( g7 d+ j3 j
        ListImpl list;: J! [* y# o7 R/ [1 g8 O
        char Id = 'a';
  N* L3 R; f% i, e) l3 o5 E; D7 z
' C3 {- b# h5 y        ActionGroupDemo(Zone aZone) {
' P* }! k0 X$ e: L" O* q                super(aZone);* s! G7 z' |! F/ q6 l9 W. G' I) [. J7 v
                list = new ListImpl(aZone);
: W2 y1 F3 c1 p5 {8 ^                swarmSetp();
1 ]7 X  X! r; ~' R  q3 A% h                actionGroup = new ActionGroupImpl(aZone);( U# v0 R4 y( I' ?
                schedule = new ScheduleImpl(aZone);% _; j  v4 W/ U/ a  ^0 d
                try {
; R& ~& D& r0 F6 j: ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- K8 [  c( ]! Q: a, j
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 B" G1 m' P( @* G3 |( m0 ~1 Q                        
/ B$ n  q; s! m! e% u                        actionGroup.createActionForEach$message(list, agentSel);
1 |) h0 w: x3 z6 z                        actionGroup.createActionTo$message(this, swarmSel);* V! [8 J# b9 r- u8 \
                        schedule.at$createAction(0, actionGroup);
$ E, `7 w, ]6 p0 V                        schedule.at$createAction(1, actionGroup);
0 t5 X* P8 @8 A: W                        schedule.at$createAction(2, actionGroup);
3 V5 n/ O5 z+ I  `; i
. G7 t0 P- k% m5 M                } catch (Exception e) {3 z& s, O' p3 B6 c: P
                        e.printStackTrace(System.err);
4 S, b% H% }" O* f! v                        //System.out.println(e);
! z9 g& `" R' w$ A; U                        System.exit(1);
# a2 q5 Y: k' q6 \3 S; E                }
1 g. T3 K. @8 m# `  J! Q: H0 r3 y3 _, [( p7 _( L: W  g. k# c
: D& z+ U( L( ~: f/ R% m6 n( p
        }
& s: x- j! u- B9 ~0 |. L( ^  ~+ q% i
        private void swarmSetp() {( @6 R0 K" B* f) Q( C
                list.addLast(new Agent(Id));; B6 ], T5 s3 o
                Id++;
; A& q5 S9 l2 f0 J9 H5 d/ I        }
* H/ _+ l6 V8 x# D9 n' z. x1 P/ u+ J& f0 b+ }# t
        public Activity activateIn(Swarm context) {
! y8 c. F  ]& Z1 H/ g) K5 b0 m" }% g& V) y                super.activateIn(context);1 h8 R( d" {1 W' O
                schedule.activateIn(this);" z/ S+ i+ |' j; C# W
                return getActivity();, e+ b- `0 W* o* S
        }3 S1 M2 f" `" Q; B4 K, J+ h$ R

: S7 ~) p0 u) W5 m        public static void main(String[] args) {. C1 x7 q, F8 O2 ~
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ i* H( @" H  a3 t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  l# e3 _0 I: b  j
                swarms.buildObjects();
' S# M3 J$ s; O8 `' X                swarms.buildActions();: r  e: c  v  ^/ u% v0 Q' M* i& W
                swarms.activateIn(null).run();# k9 F$ W$ q* |/ Y
        }: W. V% _  ]3 \0 k6 ~
& a8 C+ o! f  X" |+ U/ B$ P
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-24 00:38 , Processed in 4.322817 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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