设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9588|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, N% s6 V  `5 `& V2 O: `% O- b" \$ k0 o9 [! t8 Q; ^; G4 D# l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 L4 g2 K- g0 w, N! ], r: v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# A# u# |; N$ z
swarm.SignatureNotFoundException0 T- @* e( l$ A4 S7 l9 Z
        at swarm.Selector.<init>(Selector.java:76)* h) {$ }0 K( v: l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ E, ~  w+ e& C- A) i" h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ ?: A* Y  n8 ?% n4 _5 e
/ g4 Q5 `& G3 a( u$ W1 W% A
: s9 B3 |% r0 E0 p' w7 b% \import swarm.objectbase.SwarmImpl;" y6 \: I/ q7 I# ]' a
import swarm.objectbase.Swarm;
( F) E( f$ K+ U9 Y" ]import swarm.activity.ScheduleImpl;
0 h  Q+ [( {- v1 ]# R+ B, r9 j3 Pimport swarm.activity.Activity;
% U9 M9 t, r7 _$ V! ^3 Iimport swarm.activity.ActionGroupImpl;1 X3 L( T; y8 I
import swarm.collections.ListImpl;
' z  }1 W: ~# u7 Cimport swarm.defobj.Zone;
* c, {5 v: k" R" o* M' n  limport swarm.Globals;
7 k7 b% O- E7 _# gimport swarm.Selector;* Y( t0 x1 ~$ R" u
import swarm.activity.ActionGroup; * |7 r- F8 z" G  b3 b! W3 I
class Agent {0 T' _7 \4 H: c% C0 _" O7 z6 j$ y& y& M
        char id;
$ ~. I3 a0 D4 V
& }0 Q1 B1 y- n1 A9 h' E! M) ?        Agent(char id) {- z: }* a  Y" c5 t
                this.id = id;" W/ F0 M* j! @1 O1 m0 D, }! C$ C
        }
9 M. ^4 f. W; ~  b
/ T9 s; o$ R* ]. q        public void agentStep() {1 u. ?& s2 C" v( z) g
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 f2 I5 C4 F6 |9 ~3 ^/ j" t( i        }
" Z' q  v4 v, k2 o7 l}3 g- L8 h, G7 ]5 l& M% ~
# ?3 N, H! Q; C  o
public class ActionGroupDemo extends SwarmImpl {) {% b( v# G  K" W( |5 {" p" A
        ScheduleImpl schedule;* }+ R% ]6 \* g9 i, o3 S) P, w
        ActionGroupImpl actionGroup;& z- U; z( O8 q, X
        ListImpl list;
- {/ M' y# I5 {& ?; e        char Id = 'a';  p8 K# y; l3 \7 \9 U9 Y9 G9 }. c; }5 v
# k, V) L5 }/ d3 e5 J+ K4 m
        ActionGroupDemo(Zone aZone) {  K$ i: U: d; u* h' \; O
                super(aZone);% L4 z3 Y3 _4 D/ N# v( r
                list = new ListImpl(aZone);
# T  L" |' ?! L" j9 i                swarmSetp();& W1 r# u( S1 w6 ~
                actionGroup = new ActionGroupImpl(aZone);9 T3 \* p( `4 D6 }- S% ~
                schedule = new ScheduleImpl(aZone);& v, Z+ n: s+ i  K8 G
                try {
7 a0 O! {8 S2 h; s1 l. T, Q4 M% M- k                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 e7 N% D3 [+ @9 E4 V0 c
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 s# F) g4 L8 ]) L/ G
                        . [! ?5 ~% _3 v6 i3 q$ C( Z
                        actionGroup.createActionForEach$message(list, agentSel);1 k8 E6 ^2 `' T% u. I: |: Q
                        actionGroup.createActionTo$message(this, swarmSel);# E3 ^* j1 a% E0 z
                        schedule.at$createAction(0, actionGroup);
) L& D& }1 L6 i; o                        schedule.at$createAction(1, actionGroup);2 h4 B. W1 f) i4 y$ }+ q, c
                        schedule.at$createAction(2, actionGroup);. F+ Z& Y9 R: |0 S; \" L$ }
0 u( }" R* E" k9 b
                } catch (Exception e) {, w4 U& U2 D  e6 u
                        e.printStackTrace(System.err);
& F/ O8 q1 \* H4 F                        //System.out.println(e);* q) N; g* n: n. A. ]. o
                        System.exit(1);
& q0 l2 i4 @8 c. @                }4 R1 j+ b$ [: _. C
; m: t# J% h) B" ^# u7 z6 F' B

, |8 |/ L7 [& L% I        }
/ |. N2 e- ?' X, P7 @* Y- g; h8 t, r$ F0 u9 j, A7 w( n0 Y
        private void swarmSetp() {
& O0 R7 B( G: |9 v1 @: x5 ^                list.addLast(new Agent(Id));
8 m- N$ e& R) G5 ^2 b                Id++;
1 t' _  c9 z0 g+ y' k        }1 |% E/ A" Q, }0 Z9 t' C7 m+ w) l

4 f! l- t4 j% h. L        public Activity activateIn(Swarm context) {1 A2 Y4 e% n7 @' A' e) N3 n
                super.activateIn(context);! b1 `# N- q; Y; E: L
                schedule.activateIn(this);) S: |  q8 w1 ~0 v) r9 W8 P" b0 q
                return getActivity();. J  {5 Z& Y0 r0 ?6 Q) a1 Y7 H8 d
        }
% h$ Z, f+ E  N0 q1 D' N/ f% O/ b( I" w. J
        public static void main(String[] args) {
! ~4 n  Z: O1 t  c; ]+ w( e6 f+ N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) u/ ]  {  o, b  t+ E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) s0 d! X) i0 |% N
                swarms.buildObjects();& B( M. r' W* h4 i% w6 Q) w
                swarms.buildActions();1 [0 O5 g. d% _. c( H
                swarms.activateIn(null).run();9 f! W5 R1 J! k* g
        }
# B; q" M; J, w8 a
! x) K# R& @( B/ H, I+ @' M2 }}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-16 04:33 , Processed in 0.017724 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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