设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8174|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # J4 R( m+ g2 [& U, z3 R6 k
, S; x7 W2 K* o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 v: H& U  U+ D& ~. T8 T1 k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ u$ x4 e- M" y, Z6 Q7 `$ _swarm.SignatureNotFoundException
" j- J6 R  I. c/ r5 j        at swarm.Selector.<init>(Selector.java:76)
3 n5 D9 O+ a8 h+ G) W' E        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 y& Z8 Y3 j) k* H1 \2 G& k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 x% ]$ S+ A+ k7 Q, \" W$ c+ c' _5 M  s

* m% \# Z. P" T! Z$ r) \% F, S6 Iimport swarm.objectbase.SwarmImpl;/ l3 ^9 N! {5 P' H# u& l# a8 Y
import swarm.objectbase.Swarm;3 s! V; b0 N1 f: A& a& |  y  t
import swarm.activity.ScheduleImpl;
. l6 O' K2 z- _3 x: Iimport swarm.activity.Activity;
8 y& a) N- }" e0 h3 k4 Simport swarm.activity.ActionGroupImpl;9 M! Y) e7 e" G& \: a# J
import swarm.collections.ListImpl;
2 Y+ v! b* ^1 K# g4 M/ ~9 aimport swarm.defobj.Zone;
  ^# u( ]3 }0 d) R; `. Dimport swarm.Globals;$ t7 [% B5 K+ {
import swarm.Selector;
4 V* \2 r# d) D4 ^; P7 h2 d6 Bimport swarm.activity.ActionGroup; # L8 G7 ^1 U2 f$ J& F8 {+ }+ S
class Agent {/ S8 I$ U' g' |) p
        char id;+ y3 F. l+ U9 ^

+ l& A9 S4 N, g$ ~( o        Agent(char id) {
, Q( \1 b! S0 _7 a, c$ {& x) H                this.id = id;
* s1 j) |) G( C- E9 M- `6 p4 K        }' B3 U, M2 F$ x$ y- p# f5 ^7 h, E

; W' {; C4 {% K2 y        public void agentStep() {% i& Y/ S- K- E0 E
                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ f/ S' I1 C7 R/ e/ L  |        }
1 u5 j3 S+ u7 U- R+ s5 o}
8 B2 W/ B8 x6 w7 U
# u1 w7 }! m5 j5 u7 [public class ActionGroupDemo extends SwarmImpl {
' U8 Q* o+ m4 p) X        ScheduleImpl schedule;
* Y3 K& v4 F- s" G        ActionGroupImpl actionGroup;
  R$ t! X; d! z5 F1 J9 K        ListImpl list;) f  a  C& A- V8 O: X1 k6 D, A
        char Id = 'a';: q/ f' O0 |* @. a. e' `: l3 k6 z

4 a) v9 o* z( F5 p        ActionGroupDemo(Zone aZone) {
% h, g( e/ ]0 Z- U% ~                super(aZone);: d, _# t$ R* f4 \* ]. U- T5 Y
                list = new ListImpl(aZone);
3 ~! a" y6 F% D3 T+ ]; [) Z$ g                swarmSetp();  @  F! |, z4 a
                actionGroup = new ActionGroupImpl(aZone);
6 N/ H% |0 B7 t                schedule = new ScheduleImpl(aZone);
! s7 p8 w  o$ p% H5 [9 s- b& c                try {" w2 V& Z0 B: U) e/ M1 i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, W, g* V0 F' j5 e                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 S: l# L( o; ]2 I
                        
% T+ l8 t" `9 a                        actionGroup.createActionForEach$message(list, agentSel);6 M  G( e+ j4 F$ R6 v* F
                        actionGroup.createActionTo$message(this, swarmSel);
2 ~. S5 k, C/ _0 z4 j                        schedule.at$createAction(0, actionGroup);# }5 j; b0 f: B; J4 V1 L
                        schedule.at$createAction(1, actionGroup);3 X4 ]6 j* t5 ?2 u3 C: w6 x
                        schedule.at$createAction(2, actionGroup);
; \. |: d9 o" E9 b. _9 m
! |! g4 j& n) W- s9 R& B# j                } catch (Exception e) {1 d2 h: J4 }+ h5 x$ j
                        e.printStackTrace(System.err);- U. M. D% r% a9 z
                        //System.out.println(e);- E' h. w+ S- U) q
                        System.exit(1);
! u) r! @9 l. B0 w0 m                }6 h" j2 G- F" Y6 i4 p2 f
' Z# Z" S8 `% U- p' q8 ?

+ q2 B# K( U* `/ a        }! O; R8 r# y% M6 r! }3 A0 m5 O

1 A9 J1 ]: N; d1 S6 O        private void swarmSetp() {
7 X* O9 T+ f, M5 M, R; F                list.addLast(new Agent(Id));+ f: o! i: x& x- C' s  g- J
                Id++;
$ B. Q8 V' H$ l. r+ i0 v7 q        }: ?' ?3 k4 ^  z- _5 T7 D$ E( V
2 ~3 l. o2 a$ `5 `5 {3 ~! q
        public Activity activateIn(Swarm context) {, S) T, H# a/ a3 M, i
                super.activateIn(context);
! d; j, w: g  F9 ^6 J# B5 D                schedule.activateIn(this);+ b4 e# h1 e2 f7 J1 S5 o- Y  Y- W& I
                return getActivity();% r, G! Q. w6 X- v0 w1 Z& g
        }; ?1 K$ C: A9 L( S3 F7 T

, w) q8 f" e2 J, `8 `% [        public static void main(String[] args) {- I6 F" @; c$ S# b& [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 `% I2 m- {' K8 j+ B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ q) u$ L3 r  w% T. |* g
                swarms.buildObjects();
7 z- R7 K$ a4 j                swarms.buildActions();
% R0 j  C- N& O* t                swarms.activateIn(null).run();5 k3 w8 w0 X2 J3 {7 e1 u: Y
        }& `! s* E% h$ H
; y- b" b2 M1 f# p* M/ [" I( q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-2 00:00 , Processed in 0.021688 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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