设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5425|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) `/ j$ o' B! X' Q0 d  `& ?* O1 }( w( F, D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 _0 z9 ?" O. \5 ?3 I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' C  `! X$ W) b+ A
swarm.SignatureNotFoundException
* i9 b% O! ?9 @5 w1 r: P* `; X, ]        at swarm.Selector.<init>(Selector.java:76)( g1 r. D( X  h) m8 F4 C  }
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% Y, M% Q" \) n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 |  B. g: ^- G) ?+ J! I, |
6 B/ N1 ^5 W1 M6 s% t, \

2 C' V6 S5 X- a' O. N9 p( aimport swarm.objectbase.SwarmImpl;  k7 F( G- f9 l4 v# `
import swarm.objectbase.Swarm;; |* _- b% ?1 z. M+ u; v: G6 `
import swarm.activity.ScheduleImpl;
& U9 V9 h: I4 g- k8 N. ^# Timport swarm.activity.Activity;
0 F! U! l3 Z$ C3 d+ Bimport swarm.activity.ActionGroupImpl;6 }/ ?2 a6 v  w" k: o$ I
import swarm.collections.ListImpl;
$ D3 F0 E2 a. Vimport swarm.defobj.Zone;
3 F3 n* o! q6 [2 R6 g* l* C5 Z" ]import swarm.Globals;
8 ?2 [. w6 C$ Y* aimport swarm.Selector;
0 p' N1 d' }+ mimport swarm.activity.ActionGroup; # M# W  O( }* j
class Agent {
0 z& R4 O* k  q; U# Z* q  T4 i        char id;: U. G' u: ^) m' B, m. a) i+ O

# a3 p$ Z1 R  }2 D. B        Agent(char id) {
0 y' r" C4 Q; m: b9 K; `  J0 @5 f2 b                this.id = id;
% ~* {. J9 S! v. X        }( H) _- f  s- Z  y- ]( x
& B4 a9 n, ?& P4 u
        public void agentStep() {
; f$ _6 q8 @. W1 ~5 k* H                System.out.println(id + ":" + Globals.env.getCurrentTime());
( O0 q6 A0 V4 v) N, \. a2 t" ]        }
+ l& I0 ~% `0 d( V) a# e: W}6 K% p+ y3 j$ U

7 P# ]) ^0 o3 F+ x4 Tpublic class ActionGroupDemo extends SwarmImpl {+ ?9 @0 C, G% o' y! Z8 S
        ScheduleImpl schedule;
* o6 @: n2 ]1 m! P) R5 v        ActionGroupImpl actionGroup;% E  Z: m' Z. o: N3 ]
        ListImpl list;  v( N8 `; B0 X/ m. i
        char Id = 'a';/ w2 L) i7 O/ G' m$ s9 }) g

; [6 l1 L+ ~' e$ k3 [, s& f1 ]        ActionGroupDemo(Zone aZone) {: F# m0 f6 d0 F1 L
                super(aZone);
6 t! H! |$ q6 \7 M' r                list = new ListImpl(aZone);
4 f1 r9 f$ N* Q                swarmSetp();" |; i  q. `9 V! b" J9 F2 Q6 K
                actionGroup = new ActionGroupImpl(aZone);
. W+ j5 E4 [7 E7 r6 K4 \                schedule = new ScheduleImpl(aZone);
; O1 M  b7 i3 x+ `& p0 B                try {* d, f, L- Q: j" H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 x# D" }  S& w1 L! n7 P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; A% J' Z# z$ R5 j                        
9 d' c% C$ i& |                        actionGroup.createActionForEach$message(list, agentSel);
4 J* g' S; t' |; W                        actionGroup.createActionTo$message(this, swarmSel);
- T' }3 R- ~) A                        schedule.at$createAction(0, actionGroup);
+ U2 |1 S' h2 S! a# J                        schedule.at$createAction(1, actionGroup);
9 e$ d) Y5 _9 M+ x5 \# D6 [                        schedule.at$createAction(2, actionGroup);
! S" _" [& I3 Z; u% \6 S2 j. @" i1 |5 ]( ?3 n" U
                } catch (Exception e) {) N8 s7 O2 _) B) i% x% S5 q
                        e.printStackTrace(System.err);
7 ]3 l% W/ v8 E8 a+ U  M! z                        //System.out.println(e);, K7 M# l9 |  T$ Y) @6 H
                        System.exit(1);
& L& Q. H  f' e/ X                }! u# r$ @9 b$ h2 C9 I  W# [( v) |8 l

8 e! f" D+ j0 C+ b/ o! {/ F
8 _/ g9 q* t/ g7 U/ \        }
4 V: K3 g8 v) L4 Z& }) \
! U3 B6 y; K1 W' q/ _, y        private void swarmSetp() {
# O0 ]+ M" V$ p2 a                list.addLast(new Agent(Id));
' S& ~; `! R* c4 ?! i! Y                Id++;  h5 k3 U3 ]. @8 n% Y3 L+ m7 X4 j
        }
' A  T8 `/ v  x6 A7 q
2 h& r5 m9 e5 u0 C7 o3 H        public Activity activateIn(Swarm context) {
( _1 `6 p! A' @! R                super.activateIn(context);. Z  F% s" b0 K
                schedule.activateIn(this);
5 N$ S4 J- ^; b/ d2 `                return getActivity();
! d$ q" S, C4 m& J4 ]$ C* q; H7 i        }
& P# D+ k. M( a/ z5 O# R4 f: i, i& H/ Q$ ^
        public static void main(String[] args) {
* b$ S5 n, R/ U                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 V" U9 ~2 g6 e, U# g+ b5 o  p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ k& L" T, e' d5 A# @
                swarms.buildObjects();1 W( t6 i$ ~# B5 E9 J
                swarms.buildActions();3 `8 M" ?$ ^$ N! F
                swarms.activateIn(null).run();( W) T% s! J6 K' n2 |  ^
        }
: \) o+ v5 U( j( W6 B
( [/ {  s7 r* @  z6 c% V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-8 16:41 , Processed in 0.017604 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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